web-dev-qa-db-fra.com

301 rediriger les non-www vers www dans les sous-répertoires

Je suis dans une situation unique où j'ai plusieurs instances de la configuration de Joomla sous mon domaine principal dans différents sous-répertoires.

Par exemple:

mydomain.com = instance Joomla
mydomain.com/subdirectory1 = Une autre instance de Joomla
mydomain.com/subdirectory2 = Une autre instance de Joomla

Sur l'instance principale de Joomla, j'ai pu transférer mes pages non-www vers www à l'aide du fichier htaccess et de ce code:

RewriteEngine On
RewriteCond %{HTTP_Host} ^mydomain.com [NC]
RewriteRule (.*) http://www.mydomain.com/$1 [L,R=301]

Je souhaite également transférer des pages non-www vers des pages www sur tous les sous-répertoires.

Quel serait le meilleur moyen d'y parvenir? Étant donné que chaque sous-répertoire a sa propre instance Joomla, puis-je ajouter quelque chose à chacun des fichiers htaccess?

Je vous remercie beaucoup pour votre aide!

1
Grayson Ervin

Vous devez ajouter la ligne suivante dans chaque .htaccess dans les sous-dossiers si vous souhaitez que les règles de réécriture du fichier parent .htaccess soient également exécutées:

RewriteOptions inherit

Cela force la configuration actuelle à hériter de la configuration du parent. Dans un contexte par serveur virtuel, cela signifie que les cartes, les conditions et les règles du serveur principal sont héritées. Dans un contexte par répertoire, cela signifie que les conditions et règles de la configuration .htaccess du répertoire parent sont héritées.

Les règles héritées de l'étendue parent sont appliquées après les règles spécifiées dans l'étendue enfant.

http://httpd.Apache.org/docs/current/mod/mod_rewrite.html#rewriteoptions

1
Max