Ich arbeite an einem virtuellen Domain-System. Ich habe ein Wildcard-DNS als *.loc
eingerichtet, und ich versuche, an meiner .htaccess
Datei zu arbeiten. Der folgende Code funktioniert:.% N Rückreferenz innerhalb RewriteCond
RewriteEngine On
RewriteCond %{HTTP_HOST} ^(www.)?example\.loc$ [NC]
RewriteCond %{REQUEST_URI} !^/example/
RewriteRule (.*) /example/$1 [L,QSA]
Aber ich dies mit etwas arbeiten, möchte ich in setzen Allerdings muss ich die %{REQUEST_URI}
gegen den Text geprüft, wie der Domäne gefunden. Ich habe versucht, mit diesem Code:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^(www.)?([a-zA-Z0-9-]*.)?([a-zA-Z0-9-]+)\.loc$ [NC]
RewriteCond %{REQUEST_URI} !^/%3/
RewriteRule (.*) /%3/$1 [L,QSA]
Aber die Linie RewriteCond %{REQUEST_URI} !^/%3/
meinen Code verursacht einen Internal Server Error durch. Ich verstehe, dass dies wegen der% N in meinem Code ist, aber gibt es eine Möglichkeit, damit ich arbeiten kann? Ich brauche diese Zeile, sonst schlägt mein Code bei internen Weiterleitungen fehl.
Ich hoffe, dass dies für jemanden Sinn macht. Alles, was ich brauche, ist, einen RewriteCond in einem folgenden RewriteCond zurückreferenzieren zu können.
Prost! Ich habe keine Ahnung, was zum Teufel diese Linie wirklich macht, aber es funktioniert. Für jetzt bin ich glücklich damit. Ihre Hilfe wird sehr geschätzt :) –
Wo in aller Welt ist dies dokumentiert. Diese Antwort verdient so viele weitere Stimmen. Ich stimme zu, dass wir die Antwort nicht akzeptieren, Kopfgeld geben und wieder akzeptieren. –
Sehr schlau! Danke =) – gobwas