Ich teste mein eigenes Modul auf Magento CE 2.2.0, erhalte aber immer wieder die Meldung "Die Seite wird nicht richtig umgeleitet". Wenn ich mir den Netzwerkverkehr ansehe, sehe ich folgende Anfragen:
- / magento22-acumulus / admin /
- / magento22-acumulus / admin / admin / index / verweigert /
- / magento22-acumulus / admin / admin / auth / login /
- / magento22-acumulus / admin / admin /
- / magento22-acumulus / admin / admin / index / verweigert /
- / magento22-acumulus / admin / admin / auth / login /
- / magento22-acumulus / admin / admin /
- / magento22-acumulus / admin / admin / index / verweigert /
- / magento22-acumulus / admin / admin / auth / login /
- / magento22-acumulus / admin / admin /
- ...
Mein Setup:
- lokale Installation auf Basis-URL / magento22-acumulus /
- Wampserver 3.0.8 mit PHP 7.0.10 und Apache 2.4.23
Was ich getan habe:
- Installieren Sie Magento 2.2.0 mit Beispieldaten
- Einstellungen geändert: Entfernen Sie den geheimen Schlüssel und verwenden Sie Standard-Admin / URL
- habe es getestet: Ich bekomme den Anmeldebildschirm
- Installiere mein Modul, Modul: Aktivieren, Setup: Upgrade, Setup: Di: Kompilieren
- getestet: Fehler wie oben
- Modul: Deaktivieren, Cache: Bereinigen, Setup: Di: Kompilieren
- habe es getestet: Ich bekomme den Anmeldebildschirm
- wiederholte dies einige Male, das gleiche Muster, also dachte ich, es hätte mit meinem Modul zu tun.
- Aber dann habe ich mein Modul einmal zum Laufen gebracht und konnte auf meine eigenen Seiten gehen. Leider kam der Fehler zurück, so dass ich weiterhin einige Debugging-Vorgänge zum Aktivieren und Deaktivieren meines Moduls durchführte, das Problem jedoch nicht finden konnte
- und jetzt bekomme ich das problem auch ohne mein modul aktiviert. Ich denke, es ist ein seltsamer Zustand / Fehler in Magento selbst.
Was könnte hier das Problem sein?
admin
magento2.2
fietserwin
quelle
quelle
Antworten:
Ich bin nicht sicher, ob dies ein Fehler beim Kompilierungsprozess ist oder ob etwas mit dem Modulcode nicht stimmt. In meinem Fall hat die Magento-Kompilierung fälschlicherweise einen Interceptor für eine Klasse in meinem Modul erstellt (ohne einen tatsächlich definierten Konstruktor), der eine andere Klasse eines anderen Moduls erweitert, das eine Klasse aus Kern-Magento erweitert (beide mit definierten Konstruktoren). Neben den von Ihnen erwähnten Problemen wurde auch eine leere Seite im Frontend erstellt. Nach mehreren Neuinstallationen von Magento 2.2 und auch Magento 2.1 mit dem gleichen Problem funktionierte dies für mich:
quelle
Da Sie Apache verwenden, empfehle ich Ihnen, das RewriteLog zu aktivieren. Replizieren Sie dann das Problem und überprüfen Sie die Protokolle erneut.
quelle
Letzte Woche habe ich erneut versucht, eine saubere M2.3.4-Umgebung (mit Beispieldaten) zu installieren, und es scheint zu funktionieren. Außer nach einem Setup: di: compile trat dieses Problem erneut auf. Das Entfernen des generierten Codes aus / generate / code hat jedoch wieder funktioniert ... Es kann also ein Problem im Generator sein oder ein Code, der nach dem Typ eines Objekts sucht und die generierten Interceptor-Klassen nicht berücksichtigt. .
@Gabriel MdS antwortete mehr oder weniger gleich, aber für mich passierte es auch, wenn mein eigenes Modul noch nicht installiert war, so dass ich nur die Neuinstallation mit Beispieldaten hatte.
Also keine endgültige Antwort oder Lösung, aber sicherlich zusammen mit der Antwort von @Gabriel MdS ein starker Hinweis auf den Generierungsprozess.
quelle