2016-10-26 2 views
0

Ich möchte den Domain-Namen auf das Server-Unterverzeichnis umleiten mit Apache Rewrite-Regeln. Wie könnte ich die .htaccess-Datei ändern?Ich möchte den Domain-Namen auf das Server-Unterverzeichnis umleiten

www.a.com gebunden/a

www.b.com gebunden/b

Ich konnte es nicht ändern httpd-vhosts.conf weil einige domänenübergreifende Probleme.

Die/d hat eine .htaccess Datei, ich würde den Fehler 404 gefangen, wenn ich es löschte, oder ich würde die ERR_TOO_MANY_REDIRECTS abgefangen.

Die .htaccess-Datei:

<IfModule mod_rewrite.c> 
 
    Options +FollowSymlinks 
 
    RewriteEngine On 
 
    RewriteCond %{REQUEST_FILENAME} !-d 
 
    RewriteCond %{REQUEST_FILENAME} !-f 
 
    RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L] 
 
</IfModule>


Antwort

0

Hier ist sie: (speichern als .htaccess auf Wurzel Ihrer Website)

RewriteEngine On 
RewriteCond %{HTTP_HOST} ^www.(.*)\.com$ 
RewriteRule ^(.*)$ /full/path/to/document/root/%1/$1 [END] 

Webseite Wurzel, ist die DocumentRoot definiert auf Ihrem Apache2/v Hostkonfiguration Dies funktioniert auf Apache 2.4, 2.2 NICHT Sie sagten, Sie wollen www.a.com zu /a umleitet, ist DocumentRoot die vollständige Systempfad /

auf URL-Pfad.

Antwort auf den ersten Kommentar:

RewriteEngine On 
RewriteCond %{HTTP_HOST} ^www.(a|b|c).com$ 
RewriteRule ^(.*)$ /full/path/to/document/root/d/$1 [END] 
RewriteCond %{HTTP_HOST} ^www.(.*)\.com$ 
RewriteRule ^(.*)$ /full/path/to/document/root/%1/$1 [END] 
+0

Danke. Und wenn ich möchte, dass a.b.c nach/d umleitet, wie bearbeite ich die Regeln? – autumnfall

+0

@Autumnfall An meine Antwort angehängt. Warte, deine a.b.c soll ein Domainname sein? dann 'RewriteCond% {HTTP_HOST}^a.b.c $' –

+0

Das/d hat eine .htaccess-Datei, ich würde den 404-Fehler gefangen haben, wenn ich es löschte, oder ich würde die ERR_TOO_MANY_REDIRECTS gefangen. – autumnfall

Verwandte Themen