Zur Navigation

.htaccess redirect mit subdomain

1 luggie (Gast)

Ich versuche alle Aufrufe meiner Seite example.com weiterzuleiten auf redirection.com außer diejenigen, die mit dem suffix suffix enden (example.com/suffix). Diese sollten in den ordner suffix leiten, indem eine Wordpressinstallation liegt. Dort ist dann eine eigene .htaccess, die sich um Wordpress kümmert.
Ist das prinzipiell möglich oder würde man das anders angehen?

Hier ist was ich bisher versucht habe:
RewriteEngine On
RewriteRule ^/suffix$ https://www.example.com/suffix
RewriteRule (.*) https://www.redirection.com

31.03.2021 09:23

2 Jörg Kruse

außer diejenigen, die mit dem suffix suffix enden

Also z.B. https://www.example.com/irgendwas-suffix ? https://www.example.com/suffix selbst sollte von dem Muster nicht erfasst werden, sonst hat man eine Endlosweiterleitung. Der "." steht für ein beliebiges Zeichen vor "suffix" und "$" markiert das Ende:

RewriteRule .suffix$ https://www.example.com/suffix [L,R=301]

Mit zwei zusätzlichen Bedingungen würde ich ausschließen, dass URLs, die auf "suffix" enden, sowie URLs im WordPress-Verzeichnis /suffix nach redirection.com weitergeleitet werden:

RewriteCond %{REQUEST_URI} !suffix$
RewriteCond %{REQUEST_URI} !^/?suffix
RewriteRule ^(.*)$ https://www.redirection.com/$1 [R=301]

31.03.2021 10:10 | geändert: 31.03.2021 10:12

3 luggie (Gast)

Moin Jörg,
beinahe was ich erreichen wollte :)
Die befindliche .htaccess ist im selben Ordner wie der Order suffix. Wenn ich nun auf example.com/suffix gehe, komme ich auf dei 404 Fehlerseite der Wordpressinstallation im Ordner suffix. Was ich erreichen möchte wäre, dass man mit example.com/suffix in dieser Wordpressinstallation frei navigieren kann.

31.03.2021 17:09

4 Jörg Kruse

Wenn ich nun auf example.com/suffix gehe, komme ich auf dei 404 Fehlerseite der Wordpressinstallation im Ordner suffix.

Was steht denn in der Adresszeile des Browsers (bei manchen Browsern muss man in die Adresszeile reinlicken, damit die URL vollständig angezeigt wird)? Wenn hinten noch ein Query String (Zeichenkette, die durch ein "?" eingeleitet wird) dranhängt, und du grundsätzlich auf die Startseite der WordPress-Installation weiterleiten möchtest:

RewriteRule .suffix$ https://www.example.com/suffix/? [L,R=301]

Das "?" am Ende hängt einen alten Query String ab. Dann sollte WordPress die URL als Startseite und nicht als unbekannte Seite identifizieren.

31.03.2021 17:53 | geändert: 31.03.2021 17:55

5 luggie (Gast)

Nein, ein Querystring erschreint nicht.

Ich poste einfach mal die nicht-dummy Titel :)
Der suffix ist 'b2b'
Die Weiterleitugnsseite ist 'https://www.abiria.ch/initiativen/ada-plus-und-aevo-plus-als-einstieg-in-den-aufstieg'
Die Wordpressinstallation liegt auf ausbilderplus.de/b2b


RewriteCond %{REQUEST_URI} !b2b$
RewriteCond %{REQUEST_URI} !^/?b2b
RewriteRule .b2b https://www.ausbilderplus.de/b2b/? [L,R=301]
RewriteRule ^(.*)$ https://www.abiria.ch/initiativen/ada-plus-und-aevo-plus-als-einstieg-in-den-aufstieg/$1 [R=301]

31.03.2021 18:10

6 Jörg Kruse

Diese Reihenfolge ist korrekt:

RewriteRule .b2b https://www.ausbilderplus.de/b2b/? [L,R=301]
RewriteCond %{REQUEST_URI} !b2b$
RewriteCond %{REQUEST_URI} !^/?b2b
RewriteRule ^(.*)$ https://www.abiria.ch/initiativen/ada-plus-und-aevo-plus-als-einstieg-in-den-aufstieg/$1 [R=301]

Die Ausschluss-Bedingungen (das "!" bedeutet "nicht") sollen sich auf die folgende Weiterleitung nach abiria.ch beziehen. Und vor dem neuerlichen Test am besten den Browser-Cache leeren.

31.03.2021 19:27

7 luggie (Gast)

ich lande mit ausbilderplus.de/b2b immer noch auf der 404 Seite von Wordpress.

31.03.2021 20:23

8 Jörg Kruse

Was steht in der .htaccess Datei von WordPress (ausbilderplus.de/b2b/.htaccess)?

Ggf. muss diese Zeile dort angepasst werden:

RewriteBase /

... auf den Installationspfad:

RewriteBase /b2b/

Ansonsten könnten ggf. auch noch andere Direktiven in eine der beiden .htaccess Dateien dazwischenfunken

31.03.2021 20:35

9 luggie (Gast)

Ich habe deine Änderung schon übernommen. Leider immer noch das selbe Ergebnis

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteBase /b2b/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

31.03.2021 20:47

10 Jörg Kruse

... weil entweder das hier:

Ansonsten könnten ggf. auch noch andere Direktiven in eine der beiden .htaccess Dateien dazwischenfunken

dann solltest du mal den vollständigen Inhalt beider .htaccess Dateien posten

... oder der Fehler liegt innerhalb von WordPress

Handelt es sich um eine frische Installation oder wurde diese verschoben / umgezogen? im letzteren Fall müssen ggf. noch Anpassungen vorgenommen werden. Mit den Suchbegriffen "WordPress verschieben" lassen sich entsprechende Anleitungen finden.

Kommst du noch ins Backend oder gibt es da auch ein Fehler 404?

01.04.2021 09:13 | geändert: 01.04.2021 09:15