SEO URL´s verschwinden über Nacht

Bemerke gerade, dass morgens anscheinend nach einem cron einige Kategorien und Unterkategorien einen 500er ausgeben (Seltsamerweise immer die gleichen). Nach dem Neuaufbau des SEO-Index und löschen von template-cache und Konfigurations-cache sind sie wieder da.

Wie kann ich das abstellen?

Ist ein seoplugin im Einsatz?

nein, nichts dergleichen.

Habe ein ähnliches Problem.

Bei mir leeren sich unregelmäßig Einträge in den Freitextfeldern Kategorie und Artikel sowie der Bildtitel. Freitextfelder sind bei mir SEO-URL und - beim Artikel - eine Preisberechnung, die sich in der Bestellung auswirkt.

Es findet unregelmäßig statt, bei unterschiedlichen Artikeln/Kategorien und fällt nur zufällig auf. Entweder bei falschen Preisen in der Bestellung oder nicht erreichbaren Seiten.

Ich kann aber auch nicht regelmäßig alle Felder überprüfen…

fehler log?

 

das log zeigt nichts an.

So: habe heute nochmal nachgesehen: es müsste am Refresh seo index Cron liegen. Dieser lief heute nacht, und jetzt sind wieder einige Seiten nicht erreichbar (500).
Nachdem ich die SEO Index manuell neu aufbaue, funktioniert alles wieder.

Was kann  ich tun?

Jetzt sind schon wieder Kategorien nicht erreichbar (500), ich weiß nicht mehr, wo ich ansetzen kann. Es wurde nichts verändert.

Naja, der 500er hat ja einen Fehler der dem zugrunde liegt.

Im Log wirst du einen 500er nie finden, da dies ein PHP-Fehler ist, der ins Serverlog läuft. Du kannst die Ausgabe wie oben beschrieben aktivieren.

Ok, 
hier der ausgegebene Fehler:
 

Fatal error: Uncaught exception 'SmartyCompilerException' with message 'Syntax Error in template "/www/htdocs/xxxxxx/store/themes/Frontend/Bare/frontend/index/index.tpl" on line 7 "<html class="no-js" lang="{s name='IndexXmlLang'}{/s}" itemscope="itemscope" itemtype="http://schema.org/WebPage">" unknown tag "s"' in /www/htdocs/xxxxxx/store/engine/Library/Smarty/sysplugins/smarty_internal_templatecompilerbase.php:657 Stack trace: #0 /www/htdocs/xxxxxx/store/engine/Library/Smarty/sysplugins/smarty_internal_templatecompilerbase.php(443): Smarty_Internal_TemplateCompilerBase->trigger_template_error('unknown tag "s"', 7) #1 /www/htdocs/xxxxxx/store/engine/Library/Smarty/sysplugins/smarty_internal_templateparser.php(2388): Smarty_Internal_TemplateCompilerBase->compileTag('s', Array) #2 /www/htdocs/xxxxxx/store/engine/Library/Smarty/sysplugins/smarty_internal_templateparser.php(3101): Smarty_Internal_Tem in /www/htdocs/xxxxxx/store/engine/Library/Smarty/sysplugins/smarty_internal_templatecompilerbase.php on line 657

 

Ok, bei der Meldung musst du die config.php noch etwas anpassen, versuch mal:

 

 'phpsettings' => [
        'display_errors' => 1,
    ],
    // Frontend display Exceptions
    'front' => [
        'noErrorHandler' => true,
        'throwExceptions' => true,
    ],

Dann solltest du sowas wie „xyz not allowed by security settings“ erhalten. In der Regel steht dann da das Plugin oder der Templatepfad drin, der den Fehler erzeugt.

Mache ich. Aktuell nach dem löschen des config cache (ctrl+alt+x) sind alle wieder erreichbar. Ich beobachte  mal weiter und melde mich  dann mit der neuen Fehlermeldung.

Hallo Moritz,

 

mit der Anpassung der config.php bekomme ich nur eine leere Seite angezeigt, keine Fehler…

Jetzt habe ich eine Meldung erhalten:
 

Fatal error: Uncaught exception 'SmartyException' with message 'directory '/www/htdocs/xxxxx/store/engine/Shopware/Plugins/Community/Frontend/SwagDefaultSort/Views/frontend/listing/actions/action-sorting.tpl' not allowed by security setting' in /www/htdocs/xxxxx/store/engine/Library/Smarty/sysplugins/smarty_security.php:381 Stack trace: #0 /www/htdocs/xxxxx/store/engine/Library/Smarty/sysplugins/smarty_internal_resource_file.php(33): Smarty_Security->isTrustedResourceDir('/www/htdocs/w00...') #1 /www/htdocs/xxxxx/store/engine/Library/Smarty/sysplugins/smarty_resource.php(532): Smarty_Internal_Resource_File->populate(Object(Smarty_Template_Source), NULL) #2 /www/htdocs/xxxxx/store/engine/Library/Smarty/sysplugins/smarty_internal_resource_extends.php(41): Smarty_Resource::source(NULL, Object(Enlight_Template_Manager), '/www/htdocs/w00...') #3 /www/htdocs/xxxxx/store/engine/Library/Enlight/Components/Snippet/Resource.php(76): Smarty_Internal_Resource_Extends->populate(Object(Smarty_Template_Source), NULL) # in /www/htdocs/xxxx/store/engine/Library/Smarty/sysplugins/smarty_security.php on line 381

 

Das Problem ist wohl “SwagDefaultSort” - das Plugin wurde ja schon ewig nicht mehr angepasst und ist ein Github-Plugin. Ich denke es wird nicht mehr kompatibel sein.

Du kannst natürlich die Smarty Security auch abschalten temporär:

  'template_security' => [
      'enabled' => false,
  ],

 

@Moritz Naczenski schrieb:

Du kannst natürlich die Smarty Security auch abschalten temporär:

‚template_security‘ => [
‚enabled‘ => false,
],

Und welchen Nachteil habe ich dann?

das Plungin läßt sich nicht deaktivieren und auch nicht deinstallieren.
 

Error
An exception occurred while executing 'SELECT t0.name AS name_1, t0.onclick AS onclick_2, t0.class AS class_3, t0.controller AS controller_4, t0.action AS action_5, t0.shortcut AS shortcut_6, t0.id AS id_7, t0.position AS position_8, t0.active AS active_9, t0.pluginID AS pluginID_10, t0.parent AS parent_11, t0.pluginID AS pluginID_12, t0.parent AS parent_13 FROM s_core_menu t0 ORDER BY LIMIT 1': SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'LIMIT 1' at line 1

Edit: habe es in der Tabelle s_core_plugins deaktiviert, jetzt müsste ich es noch irgendwie löschen können…

Das Plugin wurde zuletzt für Shopware 5.1.1 getestet. Du wirst wahrscheinlich bei jedem Update einen Hinweis bekommen, dass du die Kompatibilität selbst prüfen musst, da es das nicht mehr im Store gibt. Es kann gut sein, dass es sich nicht mehr deinstallieren lässt - weil es auch nie für 5.3 oder 5.2 angepasst wurde. Da bleibt dir nur ein manuelles löschen übrig. Steht ja auch so auf Github: GitHub - shopware5/SwagDefaultSort

Working with Shopware version 5.0.0 to 5.1.1. Higher versions may work either but were not tested.

Die Smarty Security ist ein Sicherheitsfeature, was unerlaubten Zugriff durch Plugins, aber auch das Ausführen von kritischen Funktionen in Smarty unterbindet. Wenn du das abschaltest, deaktivierst du halt eine Sicherheitsfunktion. 

Wie kann ich manuell löschen? Wenn ich den Ordner des Plugins umbenenne, bekomme ich im Pluginmanager einen Fehler angezeigt:
 

Class 'Shopware_Plugins_Frontend_111_SwagDefaultSort_Bootstrap' not found

File:/ www/ htdocs/ xxxxxx/ store/ engine/ Shopware/ Components/ Plugin/ Namespace.php