2012-04-02 5 views
0

Ich verwende derzeit die folgenden, um den gesamten eingehenden Datenverkehr in den cms-Ordner im Stammverzeichnis weiterzuleiten.Weiterleiten des gesamten Datenverkehrs an Ordner

<?php header("location:/cms"); ?> 

Gibt es trotzdem, um die URL als die Website-Root zu behalten. heißt mydomain.com nicht mydomain.com/cms

alle Zeiger geschätzt,

+0

Verwendung 'mod_rewrite' oder Ihr Dokument root ändern – zerkms

Antwort

1

Sie es mod_rewrite mit erreichen können. Ich denke, das funktioniert (dies unter Document-Root innerhalb .htaccess) setzen:

RewriteEngine on 
RewriteCond %{REQUEST_URI} !^/cms/ 
RewriteRule ^(.*)$ /cms/$1 

Sie können auch nur Dokument root DocumentRoot "/home/www/mysite"

+1

Ich bin sicher, dass die einzige Regel ohne Bedingung Endlosschleife – zerkms

+0

@zerkms Dank Fall wäre, Ich habe den Endlos-Loop-Fehler behoben – galymzhan

1

-DocumentRoot "/home/www/mysite/cms" ändern denke ich mode_rewrite einer der besten Lösung für diese. Sie können den folgenden Code in die .htaccess-Datei unter Root-Verzeichnis setzen:

RewriteEngine on 
RewriteCond %{HTTP_HOST} ^(www.)?yourprimarydomain.com$ 
RewriteCond %{REQUEST_URI} !^/subfolder/ 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^(.*)$ /subfolder/$1 
RewriteCond %{HTTP_HOST} ^(www.)?yourmaindomain.com$ 
RewriteRule ^(/)?$ subfolder/index.php [L]