2010-09-27 4 views
3

J'essaie de refuser l'accès à un répertoire de sous-domaine à partir de personnes accédant directement plutôt que de les amener directement au sous-domaine. Par exemple, je veux que les gens puissent se rendre au http://test.example.com et non au http://example.com/test. Si elles montrent une erreur 403 Forbidden. Est-ce possible grâce à htaccess? Googled, mais ne peux pas voir quelqu'un faire cela. L'objectif principal étant de les empêcher d'accéder directement au contenu. J'ai essayé ce qui suit sans succès.Restreindre l'accès au répertoire Web mais autoriser le sous-domaine

<Directory /test> 
    Order Deny,Allow 
    Deny from all 
    Allow from .example.com 
</Directory> 

Répondre

5

Vous pouvez faire une redirection permanant example.com/test/-test.example.com. Cela fera en sorte que tout le monde visite votre site sous test.example.com. Ce serait plus approprié pour vos utilisateurs.

RewriteEngine On 

RewriteCond %{HTTP_HOST} ^example.com [nc] 
RewriteRule ^test/(.*)$ http://test.example.com/$1 [r=301,nc] 

Si vous voulez vraiment montrer un 403 Forbidden, vous pouvez le faire

RewriteEngine On 

RewriteCond %{HTTP_HOST} ^example.com [nc] 
RewriteRule ^test/(.*)$/[r=403,nc] 
+0

J'ai le sentiment que ce sera également rediriger toutes les autres demandes de sous-domaines à test.example.com –

Questions connexes