404 Seiten wegen nginx auf Plesk
404 Seiten sollten ja möglichst vermieden werden, sollte mit WordPress auch kein Problem sein, haben wir gedacht.
Aber sind dann eines Besseren belehrt wurden. Wir müssen gleich sagen, das Problem lag nicht am WordPress, sondern auf Server selbst. Die 404 Seiten wurden auf Grund der nginx verursacht.
Warum dann nicht zurück auf den Apache2? Nun das wäre die schnelle Lösung gewesen, leider nicht die Sinnvollste. Da Nginx ist in der Tat um einiges schneller als der Apache2, fällt bei kleinen Seiten nicht wirklich auf, bei großen und schwerfälligen Seiten dafür umso mehr.
Wieder zum Problem der 404 Seiten. Woher kommen die und warum tauchen die nur in der WordPress Pagination auf? Die Permalinks Einstellungen im WordPress System sind zwar alle auf Benutzerdefiniert, kann aber im Vergleich mit anderen Seiten nicht der Auslöser sein.
Das war die große Frage, dazu kommt auch das sowas erst mal gar nicht auffällt. Da man die Seiten zwar Testest aber nicht unbedingt genau diesen Sprung macht der den Fehler auslöst.
Das Problem trat nur, im wechsel der Kategorie Seiten 3,5 oder 9 auf Kategorie Seite 1 auf.
Das Problem mit 404 Seiten auf der Custom Pagination ist ja schon seit langem in WordPress behoben.
Nach dem gefühlten 3051351 Eintrag bei Google nach der Suche „404 Seiten Pagination“ haben wir gedacht, wir lassen das so, keine Zeit und keinen Bock jetzt weiter zu suchen was das sein könnte. Aber nein… Server Logs ausgelesen und immer wieder „Page Not Found – nginx“. Also mal wieder die 404 Seiten Ausgabe. Aber Moment….
Ja, man sieht vor lauter Bäumen den Wald nicht mehr. Nicht WordPress sondern der nginx.
Die über Stunden gedauerte Suche in den WordPress Dateien, war ganz easy für den Ars…..! Da muss man erstmal draufkommen.
Die Lösung muss auf den Server. Scheinbar kann nginx die URL nicht richtig interpretieren, da am ende ein „/“ fehlt. Nginx schreibt diesen aber mit rein und lässt dadurch die 404 Seiten auftauchen.
Also, es sollte so aussehen: http://abcdefg.de/blog/page/4 oder /blog/page/2 soweit so gut, wechselt man aber in den Übergeordneten Pfad sollte nur noch http://abcdefg.de/blog das überbleiben
Nginx meint aber es so zu machen http://abcdefg.de/blog/ und schon sind die 404 Seiten da.
Die Lösung um die 404 Seiten
auf einem Plesk Server wieder zu bändigen ist recht Simpel.
if (!-e $request_filename) { set $test P; } if ($uri !~ ^/(plesk-stat|webstat|webstat-ssl|ftpstat|anon_ftpstat|awstats-icon|internal-nginx-static-location)) { set $test "${test}C"; } if ($test = PC) { rewrite ^/(.*)$ /index.php?$1; }
Wo soll das hin?
Diesen Eintrag können Plesk User direkt in die nginx Einstellungen der entsprechenden Domain schreiben.
Unter dem Punkt Zusätzliche nginx-Anweisungen.
Nachdem der Eintrag drin ist einfach Speichern.
Und sieh da die 404 Seiten haben sich in Luft aufgelöst.
[amazon_link asins=’B072X2YJ2N,B013UBCHVU,B01EGBZA1C‘ template=’Col-md-3-ProductGrid‘ store=’webagenturmee-21′ marketplace=’DE‘ link_id=’753bb0ef-01b3-11e8-a442-2f62625222a6′]
Super Erklärung von Euch. Hat ganz schön Nerven gekostet dieser Fehler. Dank Eurer Erklärung war das Problem schnell behoben. Auch ich habe Stunden damit verbracht und kann nachvollziehen wie es Euch ging.