2009-10-19 5 views
0

Bonjour, J'ai une application qui utilise opencart. Je voudrais faire un reditect 301 au cas où l'utilisateur tape http://example.com. Pour être redirigé dans http://www.example.com (301 code d'état)Impossible de faire une redirection de domaine 301

Voici le contenu de mon .htaccess:

RewriteEngine On 

\#OPENCART REWRITES START 

RewriteCond %{REQUEST_FILENAME} !-f 

RewriteCond %{REQUEST_FILENAME} !-d 

RewriteRule ^(.*) index.php 

\#OPENCART REWRITES END 

RewriteEngine On 

RewriteBase/

RewriteCond %{HTTP_HOST} !^www.example.com$ [NC] 

RewriteRule ^(.*)$ http://www.example.com/$1 [R=301,L] 

je reçois 302 redirection au lieu de 301.

Thanx, Granit

Répondre

0

Essayez-le avec un ordre différent. Mettez vos règles qui provoquent une redirection externe avant celles qui ne provoquent qu'une redirection interne:

RewriteEngine On 

RewriteCond %{HTTP_HOST} !^www.example.com$ [NC] 
RewriteRule ^(.*)$ http://www.example.com/$1 [R=301,L] 

#OPENCART REWRITES START 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^(.*) index.php 
#OPENCART REWRITES END 
1

Avez-vous essayé de faire:

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

Empha sis sur la deuxième ligne, car elle correspond à http://example.com par opposition à la comparaison avec quoi que ce soit - mais www.example.com, qui se cassera si vous utilisez des sous-domaines. Je ne suis pas sûr si cela est exactement lié à votre problème 301/302, mais cela pourrait avoir un effet. Essayez également votre règle [R = 301, NC, L].

+0

Nous vous remercions de votre réponse. Malheureusement, cela ne fonctionne pas! – Granit

+0

C'est terriblement étrange! Je me demande si d'autres règles de réécriture posent problème. – squeeks

Questions connexes