2016-09-05 2 views
1

Im www Stammordner meines Web-Servers I 2 Ordner für 2 differents Websites habenZwei Rewrite-Regeln in der gleichen .htaccess

www/firstsite 
www/secondsite 

Um die Datei index.php der ersten Seite, die ich zu www.firstsite.com/firstProject gehen zu erreichen

um die Datei index.php der zweiten Webseite erreiche ich zu www.secondsite.com/secondProject gehen

ich möchte eine einzigartige .htaccess-Datei im Stammordner „www“ setzen. Diese Htaccess-Datei hätte ein Rewriterule für beide Webstie.

So würden Nutzer sehen www.firstsite.com statt www.firstsite.com/firstProject

und www.secondsite.com statt www.secondsite.com/secondProject

Edit: Ich verwende diese .htaccess die URL www.firstsite.com neu zu schreiben (bitte diese Website nicht vergessen, in Ordner www/firstsite:

<IfModule mod_rewrite.c> 
    RewriteEngine On 
    RewriteCond %{REQUEST_FILENAME} !-f 
    RewriteRule ^(.*)$ firstsite/$1 [QSA,L] 
</IfModule> 

Edite: hier ist die Antwort, die Sie danken hjpotter92

!
RewriteEngine On 
RewriteCond %{HTTP_HOST} ^(?:www\.)?firstsite\.com$ [NC] 
RewriteCond %{REQUEST_URI} !^/firstProject [NC] 
RewriteRule ^(.*)$ /firstProject/$1 [L] 
RewriteCond %{HTTP_HOST} ^(?:www\.)?secondsite\.com$ [NC] 
RewriteCond %{REQUEST_URI} !^/secondProject [NC] 
RewriteRule ^(.*)$ /secondProject/$1 [L] 
+0

Haben Sie keinen Zugriff auf die Root-Server-Konfiguration von Apache? Oder VHost-Konfiguration? – hjpotter92

+0

Nein Ich habe keinen Zugriff auf vhost. Ist es möglich, es mit htaccess-Datei zu tun? – zm455

+0

Ja, das ist möglich, aber die Verwendung von root config/vhost würde den Server viel schneller machen. :) – hjpotter92

Antwort

1

Verwenden Sie die %{HTTP_HOST} Variable Ihren Domain-Namen zu testen und Umleitung basierend auf, dass:

RewriteEngine On 

RewriteCond %{HTTP_HOST} ^(?:www\.)?firstsite\.com$ [NC] 
RewriteCond %{REQUEST_URI} !^/firstProject [NC] 
RewriteRule ^(.*)$ /firstProject/$1 [L] 

ähnliche Regeln für die zweite Domäne gehen.

+0

Danke, dass ich meine Frage bearbeitet habe, um zu zeigen, welche Regeln ich verwende um die URL von www.first.com neu zu schreiben. Ich versuche, Ihre Antwort zu implementieren, und ich werde ein Feedback geben, wenn ich kann – zm455

+0

Danke mein Freund, es funktioniert! Hier wird die endgültige .htaccess ich:? RewriteEngine On RewriteCond% {HTTP_HOST}^(. ?: www \) Firstsite \ .com $ [NC] RewriteCond% {REQUEST_URI} ^/Erstes [NC] RewriteRule^(. *) $/FirstProject/$ 1 [L] RewriteEngine Ein RewriteCond% {HTTP_HOST}^(?: www \.)? Sekundenseite \ .com $ [NC] RewriteCond% {REQUEST_URI}! ^/SecondProject [NC] RewriteRule^(. *) $/SecondProject/$ 1 [L] – zm455

+0

@ zm455 Die 'RewriteEngine On' wird beim zweiten Mal nicht benötigt. – hjpotter92

Verwandte Themen