2012-12-17 3 views
-1

Je dispose d'un fichier .htaccess et aimerait savoir comment récrire/home à/(répertoire racine)Aide .htaccess RewriteRule (code fourni)

Je trouve le code suivant par une autre question StackOverflow:

RewriteEngine On 

RewriteCond %{REQUEST_URI} !^/home/.*$ 
RewriteRule ^(.*)$ /$1 [L] 

Est-ce le code correct que j'utiliserais pour réécrire le répertoire/home pour qu'il apparaisse en tant que répertoire racine?

+0

La règle dans la question redirige tous les URI qui n'ont pas '/ home' à personne ne sait où parce que vous n'avez pas inclus l'URI demandé, qui est à l'opposé de ce que vous voulez, je pense. –

Répondre

0

Vous ne pouvez pas rediriger vers des dossiers en dehors de la racine du document. Si vous vraiment plan pour rendre le / de votre boîte accessible via le Web, alors vous devez créer un alias apache nommé /root qui pointe vers / d'abord. Ajoutez les lignes suivantes à votre configuration apache:

Alias /root/
<Directory "/"> 
    Options Indexes FollowSymLinks MultiViews 
    AllowOverride All 
    Order allow,deny 
    Allow from all 
</Directory> 

Ensuite, vous devez modifier le .htaccess dans vos serveurs Web racine - peut-être /var/www/.htacess - à quelque chose de simple comme ceci:

RewriteEngine On 
RewriteRule ^home/(.*) root/$1 

De plus, vous aurez pour vous assurer que l'utilisateur du serveur web a accès à /

0

Changer votre code .htaccess à ceci:

Options +FollowSymLinks -MultiViews 
# Turn mod_rewrite on 
RewriteEngine On 
RewriteBase/

RewriteRule ^home/(.*)$ /$1 [L,NC]