2010-12-06 7 views
0

J'ai un site et je utilise .htaccess pour rediriger les URL comme suit:question mod_rewrite - sensibilité à la casse

http://mysite.com/StoreName/ 

est redirigé vers

http://mysite.com/stores/StoreName/ 

et il est fait invisiblement à l'utilisateur donc l'utilisateur voit toujours

http://mysite.com/StoreName/ 

dans leur barre de navigateur (qui est ce que je veux).

Jusqu'ici, tout va bien. Le code .htaccess qui fait cela pour moi est

RewriteRule ^([-A-Za-z0-9_]+)/$ http://mysite.com/stores/$1/ [L] 

et il fonctionne très bien, avec une petite exception.

Si le dossier actuel est /stores/StoreName/ (notez la majuscule « S » et « N ») et les types d'utilisateur dans

http://mysite.com/storename/ 

dans leur barre de navigation, ils sont redirigés toujours correctement, mais il n'est plus invisible. Le navigateur affiche maintenant

http://mysite.com/stores/StoreName/ 

Est-il possible pour l'entrée redirigés correctement http://mysite.com/storename/, et montrent encore http://mysite.com/StoreName/ dans la barre du navigateur? J'ai essayé

RewriteRule ^([-A-Za-z0-9_]+)/$ http://mysite.com/stores/$1/ [L,NC] 

mais cela a conduit à une erreur 'fichier non trouvé'. Merci pour l'aide!

Répondre

0

Cette règle ne modifie pas le cas et ne redirige pas le client. Quelque chose d'autre dans votre configuration le redirige, peut-être votre 404 ErrorDocument.

+0

Eh bien, le module mod_spelling corrige le cas et la règle redirige le client. Je veux juste que ce soit invisible. – Max

+0

Donc http://mysite.com/nom_store est redirigé par mod_rewrite vers http://mysite.com/stores/storename et le module mod_spelling le corrige alors sur http://mysite.com/stores/StoreName. C'est tout bon, mais je veux que la barre du navigateur affiche http://mysite.com/StoreName – Max

+0

Alors, ce que vous dites, c'est que votre problème n'a rien à voir avec mod_rewrite. –

Questions connexes