Backup eingespielt 404

Ich habe aufgrund des gestern gepoisteten Problems nun ein Backup (Datrenbank und Files) vom 30.05. eingespielt (da ich nicht exakt sicher sein konnte ob das Problem seit 31.05. oder seit 01.06. bestand).

 

Nun bekomme ich im Frontend nur noch 404

 

Das backend funktioniert weitgehend - nur bei der Artikelübersicht bekomme ich auch eine Fehlermeldung:

 

Ups! Ein Fehler ist aufgetreten! Die nachfolgenden Hinweise sollten Ihnen weiterhelfen. An exception occurred while executing 'SELECT t0.id AS id_1, t0.articleID AS articleID_2, t0.articledetailsID AS articledetailsID_3, t0.attr1 AS attr1_4, t0.attr2 AS attr2_5, t0.attr3 AS attr3_6, t0.attr4 AS attr4_7, t0.attr5 AS attr5_8, t0.attr6 AS attr6_9, t0.attr7 AS attr7_10, t0.attr8 AS attr8_11, t0.attr9 AS attr9_12, t0.attr10 AS attr10_13, t0.attr11 AS attr11_14, t0.attr12 AS attr12_15, t0.attr13 AS attr13_16, t0.attr14 AS attr14_17, t0.attr15 AS attr15_18, t0.attr16 AS attr16_19, t0.attr17 AS attr17_20, t0.attr18 AS attr18_21, t0.attr19 AS attr19_22, t0.attr20 AS attr20_23, t0.shops_seo_manager_title AS shops_seo_manager_title_24, t0.shops_seo_manager_canonical AS shops_seo_manager_canonical_25, t0.shops_seo_manager_url AS shops_seo_manager_url_26, t0.shops_seo_manager_robots AS shops_seo_manager_robots_27, t0.shops_seo_manager_facebook AS shops_seo_manager_facebook_28, t0.shops_seo_manager_twitter AS shops_seo_manager_twitter_29, t0.scha1_tabfield1 AS scha1_tabfield1_30, t0.scha1_tabfield2 AS scha1_tabfield2_31, t0.scha1_tabfield3 AS scha1_tabfield3_32, t0.scha1_tabfield4 AS scha1_tabfield4_33, t0.scha1_tabfield5 AS scha1_tabfield5_34, t0.scha1_tabfield6 AS scha1_tabfield6_35, t0.scha1_tabfield7 AS scha1_tabfield7_36, t0.scha1_tabfield8 AS scha1_tabfield8_37, t0.scha1_tabfield9 AS scha1_tabfield9_38, t0.scha1_tabfield10 AS scha1_tabfield10_39, t0.swkwe_is_set_article AS swkwe_is_set_article_40, t0.scha1_showleftsidebararticle AS scha1_showleftsidebararticle_41, t0.neti_coupon_tax_config AS neti_coupon_tax_config_42, t0.neti_coupon_shipping_free AS neti_coupon_shipping_free_43, t0.neti_valid_time AS neti_valid_time_44, t0.neti_coupon AS neti_coupon_45, t0.neti_coupon_type AS neti_coupon_type_46, t0.neti_coupon_title AS neti_coupon_title_47, t0.neti_subshop_only AS neti_subshop_only_48, t0.neti_shipping_charge AS neti_shipping_charge_49, t0.neti_exclude_from_shippingcosts AS neti_exclude_from_shippingcosts_50, t0.neti_customergroupscharge AS neti_customergroupscharge_51, t0.neti_minimum_charge AS neti_minimum_charge_52, t0.neti_designs AS neti_designs_53, t0.neti_easycoupon_options AS neti_easycoupon_options_54, t0.neti_easycoupon_discard_remaining AS neti_easycoupon_discard_remaining_55, t0.neti_easycoupon_shipping_methods AS neti_easycoupon_shipping_methods_56, t0.scha1_showprice AS scha1_showprice_57, t0.scha1_showpricetext AS scha1_showpricetext_58, t0.scha1_requestprice AS scha1_requestprice_59, t0.scha1_requestpricetext AS scha1_requestpricetext_60, t0.pixup_exclude_sitemap AS pixup_exclude_sitemap_61, t0.pixup_link_priority AS pixup_link_priority_62, t0.pixup_link_link_change_frequenzy AS pixup_link_link_change_frequenzy_63, t0.neti_article_archive_archived AS neti_article_archive_archived_64, t0.neti_article_archive_archivedate AS neti_article_archive_archivedate_65, t0.neti_article_archive_original_categories AS neti_article_archive_original_categories_66, t0.dreisc_seo_url AS dreisc_seo_url_67, t0.dreisc_seo_title AS dreisc_seo_title_68, t0.dreisc_seo_title_replace AS dreisc_seo_title_replace_69, t0.dreisc_seo_breadcrumb AS dreisc_seo_breadcrumb_70, t0.dreisc_canonical_link AS dreisc_canonical_link_71, t0.dreisc_robots_tag AS dreisc_robots_tag_72, t0.dreisc_facebook_description AS dreisc_facebook_description_73, t0.dreisc_twitter_description AS dreisc_twitter_description_74, t0.articleID AS articleID_75, t0.articledetailsID AS articledetailsID_76 FROM s_articles_attributes t0 WHERE t0.articledetailsID = ?' with params [471]: SQLSTATE[42S22]: Column not found: 1054 Unknown column 't0.dreisc_seo_url' in 'field list' in vendor/doctrine/dbal/lib/Doctrine/DBAL/DBALException.php on line 119 Stack trace: #0 vendor/doctrine/dbal/lib/Doctrine/DBAL/Connection.php(836): Doctrine\DBAL\DBALException::driverExceptionDuringQuery(Object(Doctrine\DBAL\Driver\PDOMySql\Driver), Object(PDOException), 'SELECT t0.id AS...', Array) #1 engine/Library/Doctrine/ORM/Persisters/Entity/BasicEntityPersister.php(742): Doctrine\DBAL\Connection->executeQuery('SELECT t0.id AS...', Array, Array) #2 engine/Library/Doctrine/ORM/Persisters/Entity/BasicEntityPersister.php(820): Doctrine\ORM\Persisters\Entity\BasicEntityPersister->load(Array, NULL, Array) #3 vendor/doctrine/orm/lib/Doctrine/ORM/UnitOfWork.php(2626): Doctrine\ORM\Persisters\Entity\BasicEntityPersister->loadOneToOneEntity(Array, Object(Shopware\Models\Article\Detail)) #4 vendor/doctrine/orm/lib/Doctrine/ORM/Internal/Hydration/ObjectHydrator.php(273): Doctrine\ORM\UnitOfWork->createEntity('Shopware\\Models...', Array, Array) #5 vendor/doctrine/orm/lib/Doctrine/ORM/Internal/Hydration/ObjectHydrator.php(491): Doctrine\ORM\Internal\Hydration\ObjectHydrator->getEntity(Array, 'detail') #6 vendor/doctrine/orm/lib/Doctrine/ORM/Internal/Hydration/ObjectHydrator.php(165): Doctrine\ORM\Internal\Hydration\ObjectHydrator->hydrateRowData(Array, Array) #7 vendor/doctrine/orm/lib/Doctrine/ORM/Internal/Hydration/AbstractHydrator.php(147): Doctrine\ORM\Internal\Hydration\ObjectHydrator->hydrateAllData() #8 vendor/doctrine/orm/lib/Doctrine/ORM/AbstractQuery.php(978): Doctrine\ORM\Internal\Hydration\AbstractHydrator->hydrateAll(Object(PDOStatement), Object(Doctrine\ORM\Query\ResultSetMapping), Array) #9 vendor/doctrine/orm/lib/Doctrine/ORM/AbstractQuery.php(924): Doctrine\ORM\AbstractQuery->executeIgnoreQueryCache(NULL, 1) #10 vendor/doctrine/orm/lib/Doctrine/ORM/AbstractQuery.php(727): Doctrine\ORM\AbstractQuery->execute(NULL, 1) #11 vendor/doctrine/orm/lib/Doctrine/ORM/Tools/Pagination/Paginator.php(165): Doctrine\ORM\AbstractQuery->getResult(1) #12 engine/Shopware/Components/MultiEdit/Resource/Product/Filter.php(181): Doctrine\ORM\Tools\Pagination\Paginator->getIterator() #13 engine/Shopware/Components/MultiEdit/Resource/Product/Filter.php(203): Shopware\Components\MultiEdit\Resource\Product\Filter->getPaginatedResult(Object(Doctrine\ORM\Query)) #14 engine/Shopware/Components/MultiEdit/Resource/Product.php(112): Shopware\Components\MultiEdit\Resource\Product\Filter->filter(Array, 0, '25', Array) #15 engine/Shopware/Controllers/Backend/ArticleList.php(359): Shopware\Components\MultiEdit\Resource\Product->filter(Array, 0, '25', Array) #16 engine/Library/Enlight/Controller/Action.php(159): Shopware_Controllers_Backend_ArticleList->filterAction() #17 engine/Library/Enlight/Controller/Dispatcher/Default.php(523): Enlight_Controller_Action->dispatch('filterAction') #18 engine/Library/Enlight/Controller/Front.php(223): Enlight_Controller_Dispatcher_Default->dispatch(Object(Enlight_Controller_Request_RequestHttp), Object(Enlight_Controller_Response_ResponseHttp)) #19 engine/Shopware/Kernel.php(182): Enlight_Controller_Front->dispatch() #20 vendor/symfony/http-kernel/HttpCache/HttpCache.php(491): Shopware\Kernel->handle(Object(Enlight_Controller_Request_RequestHttp), 1, true) #21 engine/Shopware/Components/HttpCache/AppCache.php(266): Symfony\Component\HttpKernel\HttpCache\HttpCache->forward(Object(Symfony\Component\HttpFoundation\Request), true, NULL) #22 vendor/symfony/http-kernel/HttpCache/HttpCache.php(258): Shopware\Components\HttpCache\AppCache->forward(Object(Symfony\Component\HttpFoundation\Request), true) #23 engine/Shopware/Components/HttpCache/AppCache.php(103): Symfony\Component\HttpKernel\HttpCache\HttpCache->pass(Object(Symfony\Component\HttpFoundation\Request), true) #24 shopware.php(117): Shopware\Components\HttpCache\AppCache->handle(Object(Symfony\Component\HttpFoundation\Request)) #25 {main}  

OK

Kann sich da jemand einen Reim darauf machen?

Shop habe ich nun in Wartungsmodus versetzt…

 

Der Fehler steht am Anfang des rot gesetzten Bereichs

Column not found: 1054 Unknown column ‚t0.dreisc_seo_url‘

Es wird eine Spalte in der Datenbank erwartet, die nicht vorhanden ist. Aufgrund des Namens der Spalte evtl. von einem Plugin eines Herstellers der mit „dreisc…“ beginnt und das Einfügen einer SEO_URL ermöglicht. 

Eigentlich sollte das aber nicht passieren, wenn Du wirklich ein vollständiges Update eingespielt hast. Lösch mal alle Caches im Dateisystem  - änder den Namen des  Ordners var/caches/product… . Es kann sein, dass der ursächliche Fehler bereits vor dem 30.5 entstanden ist und durch das Generieren von Cache-Dateien erst jetzt bemerkt worden ist.

Die 404 Errors im Frontend können eine Folge der „fehlenden“ SEO-Links sein, falls diese in der fehlenden Tabellenspalte der DB standen. Sobald der DB-Fehler beseitigt ist, den SEO-Index neu erstellen.

 

1 „Gefällt mir“

Bitte ggf. einmal das Dreischild Plugin neu installieren. Alternativ kann auch über die phpMyAdmin oder im Shopware Backend „Freitextfeld Verwaltung“ geprüft werden ob das Attribut dreisc_seo_url in s_articles_attributes angelegt ist. Falls nicht händisch anlegen, wenn durch Pluginneuinstallation nicht möglich.

1 „Gefällt mir“

Klasse…herzlichen dank für die schnelle Hilfe!

Das Umbenennen des /var/cahce/prod… hats offenbar gebracht.

Daran hatte ich nicht gedacht, dass ggf. das Löschen des Caches im backend nicht ausreichend sein könnte.

Ich hatte ja extra das komplette Backup eingespielt, damit eben keine Inkostenzen auftreten. Umso weniger war nun verständlich, dass es eben doch passierte.

Und das Backup hat (wie beabsichtigt) auch das ursprüngliche Problem der fehlenden Produktbeschreibung gelöst.

 

Da wir in den vergangenen zwei Tagen einige neue Artikel angelegt haben, wäre jetzt nur noch das zu tun. Wie würdet Ihr da vorgehen?

Versuchen das aus einem neuen Backup wieder herzustellen, oder lieber nochmal neu anlegen?

Ich vermute es sind ja eine ganze Reihe von Datenbank-Spalten betroffen und es dürfte kaum möglich sein, das ohne neue Inkonsistenzen  zu schaffen, oder?

 

 

@Mika_Ka schrieb:

Klasse…herzlichen dank für die schnelle Hilfe!

Das Umbenennen des /var/cahce/prod… hats offenbar gebracht.

Daran hatte ich nicht gedacht, dass ggf. das Löschen des Caches im backend nicht ausreichend sein könnte

 Kann an der Serverkonfiguration liegen. 

Zur anderen Frage: Lege die Artikel neu an. Man kann die natürlich aus anderen neueren Backups extrahieren - über DB oder Import/Export - ich vermute aber aufgrund deiner Fragen, dass deine Kenntnisse dafür nicht ausreichen und du dir mehr Ärger einhandelst als Zeit einsparst.

 

1 „Gefällt mir“

Danke! 

@hth schrieb:

…- ich vermute aber aufgrund deiner Fragen, dass deine Kenntnisse dafür nicht ausreichen und du dir mehr Ärger einhandelst als Zeit einsparst.

 

Vollkommen richtig… Blush

Für den Hausgebrauch reicht es meist…

Trotzdem sollte man seine Grenzen kennen und einischtig genug sein, diese dann auch zu akzeptieren. Kompliziertere Dinge muss ich in der Regel dann einfach Leuten überlassen, die sich da mir fehlende Wissen aneignen konnten…