2011-06-23 2 views
0

Je veux rediriger toutes les requêtes vers http://domain.com-http://www.domain.com, d'où j'utilise le .htaccess suivant placé à la racine de mon site:Rediriger domain.com à www.domain.com

RewriteEngine On 
RewriteCond %{HTTP_HOST} ^domain\.com 
RewriteRule ^(.*)$ http://www.domain.com/$1 [R=permanent,L] 

Cela fonctionne très bien , sauf dans les sous-dossiers où je fais un peu plus la réécriture d'URL:

RewriteEngine on 
RewriteBase /articles/ 
RewriteRule ^(.+)$ index.php [L] 

en fait, rien se produit si j'entrez l'URL: http://domain.com/articles/article.html comportement attendu serait une redirection vers http://www.domain.com/articles/article.html

Quel serait le meilleur moyen d'atteindre le résultat?

Merci

Répondre

4

Vous devez utiliser RewriteOptions directive pour indiquer à Apache d'utiliser .htaccess du dossier parent après la finition des règles de traitement de .htaccess locale:

RewriteOptions inherit 

Mais les règles parents seront processus après locaux .. que vous ne pouvez pas aimer (comme URL de résultat peut lo ok comme http://www.domain.com/articles/index.php qui sera visible dans la barre d'adresse).

Idéalement, vous voulez tout déplacer en un seul. Htaccess - si vous le pouvez.

0

J'aurais pensé que cela devrait fonctionner, si vous l'avez dans le sous-dossier:

RewriteBase /articles/ 
RewriteCond %{http_host} ^website\.com [nc] 
RewriteRule ^(.*)$ http://www.website.com/articles/$1 [R=301,NC] 
Questions connexes