2009-07-29 7 views
1

Donc, http://myopicvoid.org/ lorsqu'il est chargé dans Firefox ou Chrome, redirige automatiquement à http://myopicvoid.org/main aussi bien qu'il le devrait, mais pas dans IE8. Qu'est-ce qui causerait exactement cela? Mon .htaccess est comme suit:Bizarre .htaccess url réécriture de l'écart

Options +FollowSymlinks 

RewriteEngine On 

RewriteCond %{HTTP_HOST} ^myopicvoid\.org$ 
RewriteCond %{REQUEST_URI} ^/$ 
RewriteRule//main [r=301,L] 

RewriteCond %{HTTP_HOST} ^myopicvoid\.org$ 
RewriteCond %{REQUEST_URI} !^/script/.* 
RewriteCond %{REQUEST_URI} !^/style/.* 
RewriteRule ^(.*)$ /script/$1.py [L] 

Il existe un main.py dans/script, mais je suis rencontré Erreur 404 Not Found (script introuvable ou incapable de stat: script/py) dans Internet Explorer . Aidez-moi?

Répondre

2

Je recommande de changer

RewriteCond %{HTTP_HOST} ^myopicvoid\.org$ 
RewriteCond %{REQUEST_URI} ^/$ 
RewriteRule//main [r=301,L] 

Pour:

RewriteCond %{HTTP_HOST} ^myopicvoid\.org$ 
RewriteRule ^/?$ /main [r=301,L] 

Alors, ce que je l'ai fait est supprimé la condition, mais la règle ne fait correspondre soit rien, ou juste un seul avant -sabrer. La condition n'était pas vraiment nécessaire. Il est important de noter que mod_rewrite traite les règles d'abord, puis vérifie si elles répondent à leurs conditions, donc cela devrait être un peu plus efficace.

Cela sera un peu plus tolérant si la requête n'inclut pas le slash final.

0

En haut de ma tête - peut-être que l'URL http://myopicvoid.org/ a la barre oblique supprimée lorsque vous faites la demande de certains sourcils? Cela empêcherait le "/" de correspondre au premier RewriteRule.

Questions connexes