Upgrade 4.06 -> 5.5.4: /admin/dbupdater führt zu HTTP 300 Multiple Choices

delaware

Sehr aktives Mitglied
23. Juni 2017
388
31
Hallo zusammen,

ich versuche aktuell einen geklonten JTL-Shop 4.06 (Build 17) auf JTL-Shop 5.5.4 zu aktualisieren und komme beim Datenbank-Update nicht weiter.

Folgende Schritte wurden durchgeführt:

  • Shop 4.06 auf eine Testumgebung geklont
  • JTL-Shop 5.5.4 Komplettpaket hochgeladen
  • Die laut Anleitung auszunehmenden Dateien/Ordner nicht überschrieben
  • PHP auf 8.4 umgestellt (testweise auch 8.3 und 8.2)
  • Alle Plugins deaktiviert
  • Plugin-Ordner ist leer
  • Shop-URL in der config.JTL-Shop.ini.php geprüft und korrekt gesetzt
Beim Aufruf von:

/admin/

oder

/admin/index.php

werde ich automatisch auf

/admin/dbupdater

weitergeleitet.

Anschließend erscheint folgende Fehlermeldung:

Multiple Choices

The document name you requested (/admin/dbupdater) could not be found on this server. However, we found documents with names similar to the one you requested.

Available documents:

/admin/dbupdater.php (common basename)

Die Datei dbupdater.php existiert tatsächlich im Verzeichnis /admin.

Weitere Informationen:

  • dbupdater.php ist vorhanden
  • Es existiert kein Ordner /admin/dbupdater
  • Es existieren keine weiteren Dateien wie dbupdater.html, dbupdater.old usw.
  • test.php im Admin-Verzeichnis lässt sich problemlos ausführen
  • Die .htaccess-Dateien wurden geprüft
  • RewriteBase / ist gesetzt
  • Options -MultiViews wurde getestet
  • Der Hostinganbieter konnte das Verhalten nachvollziehen
Aus dem Access-Log:

GET /admin/dbupdater.php -> HTTP 308 Redirect

anschließend

GET /admin/dbupdater -> HTTP 300 Multiple Choices

Hat jemand schon einmal ein ähnliches Verhalten beim Upgrade von Shop 4 auf Shop 5 gesehen oder kennt eine Möglichkeit, den Datenbank-Updater alternativ zu starten?

Vielen Dank für jede Idee.
 

css-umsetzung

Offizieller Servicepartner
SPBanner
6. Juli 2011
8.609
2.683
Berlin
Firma
css-umsetzung
Die laut Anleitung auszunehmenden Dateien/Ordner nicht überschrieben
Was für Dateien hast du nicht überschrieben?
ich überschreibe grundsätzlich alles mit der aktuellen Zip Version, die .htacces aus dem Hauptverzeichnis sichere ich vorher und füge die individuell angepassten Inhalte wieder ein.

Zwei Fragen:
  • Wo ist der Shop gehostet?
  • kann es sein das du die URL in der config.ini vom Shop mit einem slash am Ende angegeben hast?
 

delaware

Sehr aktives Mitglied
23. Juni 2017
388
31
Danke für die Rückmeldung.


Der Shop läuft bei IONOS habe einen dedicated manages Server


In der config.JTL-Shop.ini.php steht die URL aktuell ohne Slash am Ende:


define('URL_SHOP', 'https://shop-domain.de');



Daran sollte es also nicht liegen.


Nicht überschrieben hatte ich ursprünglich nur die Dateien bzw. Ordner, die laut JTL-Anleitung ausgenommen werden sollen (install, shopinfo.xml sowie die vorhandene admin/.htaccess).


Inzwischen habe ich testweise auch die originale admin/.htaccess aus dem 5.5.4-Paket übernommen sowie die alten Shop-4-Plugins komplett deaktiviert bzw. entfernt. Leider ohne Änderung am Verhalten.
 

delaware

Sehr aktives Mitglied
23. Juni 2017
388
31
Vielen Dank für den Hinweis!

Das war tatsächlich die Lösung.

Ich saß mittlerweile seit vielen Stunden an dem Problem und hatte bereits mit meinem Hostinganbieter telefoniert, die .htaccess-Dateien geprüft, Plugins deaktiviert, verschiedene PHP-Versionen getestet und sogar Kontakt mit dem JTL-Support aufgenommen. Niemand konnte die Ursache finden.

Der entscheidende Unterschied war tatsächlich:

RewriteBase /admin/



in der /admin/.htaccess.

Danach wurde der Datenbank-Updater sofort korrekt aufgerufen und das Upgrade konnte gestartet werden.

Vielen Dank für die schnelle und treffsichere Hilfe. Sie haben mir damit vermutlich viele weitere Stunden Fehlersuche erspart.


Viele Grüße
 

Ähnliche Themen