Wordpress Permalinks 404

  • Hallo,


    heute habe ich mein Wordpress (4.9.4) auf einen Webhosting 2000-Account umgezogen. Bisher läuft auch alles, außer die Permalinks, die ich nicht hinbekomme. Normale Links mit p=123 laufen. Ich habe das schon hin und her gestellt, Plugins deaktiviert, Themes gewechselt.


    Meine .htaccess sieht so aus:

    Code
    1. # BEGIN WordPress
    2. <IfModule mod_rewrite.c>
    3. RewriteEngine On
    4. RewriteBase /
    5. RewriteRule ^index\.php$ - [L]
    6. RewriteCond %{REQUEST_FILENAME} !-d
    7. RewriteCond %{REQUEST_FILENAME} !-f
    8. RewriteRule . /index.php [L]
    9. </IfModule>
    10. # END WordPress

    Die Hostingeinstellungen für die Apache und nginx sind so:


    hostingeinstellungen.png


    Das Wordpress liegt im Ordner httpdocs/route, die Domain ist https://www.route-wird-berechnet.de


    Kann mich da jemand in die richtige Richtung schubsen?

  • Moin,


    erste banale Idee. Hast Du in den Settings die Permalinks aufgerufen und ohne Änderung auf "Speichern" geklickt? Oftmals reicht es, wenn die Datei neu erstellt / geändert wird.


    Wie sieht die Berechtigung auf die .htaccess aus? 660 müsste hier eingestellt sein.

    Ggf. die htaccess löschen und neu anlegen.


    Die Settings selbst sehen gut aus.

  • Ganau das hatte damals bei mit geholfen. Hatte das gleiche Problem für die kleineren WP Installationen. Die großen liegen auf nem root Server, da wars komischerweise nicht nötig.

  • erste banale Idee. Hast Du in den Settings die Permalinks aufgerufen und ohne Änderung auf "Speichern" geklickt? Oftmals reicht es, wenn die Datei neu erstellt / geändert wird.

    Jep, habe ich probiert. Hilft nicht. Muss es die Datei anlegen, wenn keine existiert? Standardmäßig war keine .htaccess vorhanden.


    Wie sieht die Berechtigung auf die .htaccess aus? 660 müsste hier eingestellt sein.

    644, wenn ich auf 660 stelle, dann sieht die Seite aus, als würde das CSS-Sheet fehlen:


    wp-660.png


    Ich glaube fast, da ist bei der installation was schiefgegangen.

  • Hallo martin\


    ich habe gerade das identische Problem und konnte es nur unsauber lösen in dem ich bei den Permalinks unter Benutzerdefiniert "/index.php/%postname%/" eingetragen habe. Geht jetzt zwar aber ist nicht die beste Lösung. Hat jemand eine bessere Idee ?


    Folgendes wurde schon versucht:


    Rewrite auf generelle Funktion geprüft --> OK

    Code
    1. RewriteEngine On
    2. RewriteRule ^ http://www.netcup.de [R,L]

    Permalinks auf Standard und wieder zurück gestellt --> 404 Error

    Hostingeinstellungen alle haken raus nur Proxymodus aktiviert --> 404 Error


    .htaccess gelöscht und neu erzeugt --> 404 Error


    Code
    1. # BEGIN WordPress
    2. RewriteEngine On
    3. RewriteBase /
    4. RewriteRule ^index\.php$ - [L]
    5. RewriteCond %{REQUEST_FILENAME} !-f
    6. RewriteCond %{REQUEST_FILENAME} !-d
    7. RewriteRule . /index.php [L]
    8. # END WordPress

    RewriteBase / auf /wordpress/ umgestellt (also das Verzeichniss wo WP installiert ist) --> 404 Error


    .htaccess Berechtigung auf 777 gestellt --> 404 Error

  • Benutzerdefiniert "/index.php/%postname%/" eingetragen

    Ja, die Regel ging bei mir auch, allerdings habe ich dann ja als URL $seite.tld/index.php/blabla, das zerhaut die meisten Links bei mir, weil es bisher ohne index.php war. Aber schön, dass ich nicht der Einzige mit dem Problem bin ;-) Ggf. ist das ein Support-Fall, ich schreibe die nachher mal an.

  • Schade.... Die /index.php/ Lösung passt mir auch nicht wirklich, da ja noch mehr daran hängt. Die Standard Tipps die im Netz kursieren wurden ja schon getestet ohne Erfolg. Was mir noch einfällt ist die Plugins zu deaktivieren und nach und nach zu reaktivieren, wobei ich mir das nicht vorstellen kann, das Plugin würde sich ja auch auf Benutzerdefiniert "/index.php/%postname%/" auswirken.

  • Quote

    Was mir noch einfällt ist die Plugins zu deaktivieren und nach und nach zu reaktivieren

    Das bringt nichts. Habe ich schon getestet. Ich habe Mal angefragt, ob es möglich ist, für nginx Serverkonfigurationen auf Userbasis einzustellen, vll hilft das.

  • Hi zusammen,


    ich hab das gleiche Problem, könnte es aber nur fixen, wenn ich vorher den nginx Proxy Modus aktiviere...aber hab ich dann noch alle Vorteile von nginx? Oder kann ich dann die htaccess z.b. für redirects nutzen?


    Danke und Grüße

  • Richtig, deshalb sollte die Einstellung "FPM per Apache" gesetzt sein und nginx nur als Proxy laufen. Nginx kennt keine .htacces.

    Ich habe auch keine Möglichkeit gesehen die passenden nginx befehle mitzugeben, da das ja alles in der .conf Datei von nginx parametriert wird und da kommen wir ja nicht ran.

  • Laut diversen Quellen muss man dazu in Plesk lediglich ein kleines Codesnippet unter "Einstellungen für Apache & nginx / zusätzliche nginx-Anweisungen" eintragen, doch dieser Bereich scheint es bei netcup nicht zu geben.

    nginx-Redirects sind meines Wissens entweder direkt im Server, in der nginx.conf oder in Wordpress via Plugins möglich (z.b. yoast premium oder simple redirect), bei letzteren sind AFAIK keine globalen Permalink Redirects möglich, man müsste ggf. jede einzelne URL auf die richtige weiterleiten.
    Meint ihr, dass ich den Support mal darauf ansprechen sollte?


    Kann doch nicht sein, dass man bei netcup kein Wordpress mit nginx benutzen kann, wenn man die Permalink-Struktur auf eine SEO-übliche Struktur umstellt (z.b. /%postname%/).


    [Blocked Image: http://up.picr.de/32447569qp.png]

  • Ich hab Antwort von netcup erhalten, kurz vorweg: das Problem wurde nicht gelöst.

    Ich muss hoffen, dass sich hier im Forum jemand mit der Lösung meldet, bis dahin nutze ich die nginx-Proxy / FPM-per-Apache-Lösung.
    Für diejenigen, die es interessiert:


    Antwort von netcup: