Spidetra Posté 10 Mai 2006 Posté 10 Mai 2006 Salut à tous, J'ai un .htaccess avec un ensemble de règle de réécriture qui fonctionnent en local et chez Ovh. J'ai rajouté une dernière règle pour rediriger index.php => / RewriteRule ^index.php$ / [QSA,L,R=301] ça marche très bien en local, mais pas chez Ovh. Quelle est la bonne syntaxe pour rédiriger index.php vers la racine du site ? merci pour le coup de main.
The Jedi Posté 10 Mai 2006 Posté 10 Mai 2006 Chez OVH ça te fait quoi justement, une erreur ? Si tu as accès au log (error_log), tu peux identifier la ligne de l'erreur ? En général il te dit ce qui déconne (chemin introuvable etc.).
Dan Posté 10 Mai 2006 Posté 10 Mai 2006 Enlève le ^ devant index.php RewriteRule index.php$ / [QSA,L,R=301]
Spidetra Posté 10 Mai 2006 Auteur Posté 10 Mai 2006 Merci pour vos infos. Les différentes modifs ne marchent pas. Et comme ce n'est pas mon site, pour l'instant, je n'ai pas accés aux fichiers de logs. Voici le .htaccess en entier : Options +FollowSymLinksRewriteEngine OnRewriteBase /RewriteRule ^(.*)-p-(.*).html$ product_info.php?products_id=$2&%{QUERY_STRING}RewriteRule ^(.*)-c-(.*)/$ index.php?cPath=$2&%{QUERY_STRING}RewriteRule ^(.*)-m-(.*)/$ index.php?manufacturers_id=$2&%{QUERY_STRING}RewriteRule ^(.*)-pi-(.*).html$ popup_image.php?pID=$2&%{QUERY_STRING}RewriteRule ^(.*)-t-(.*).html$ articles.php?tPath=$2&%{QUERY_STRING}RewriteRule ^(.*)-a-(.*).html$ article_info.php?articles_id=$2&%{QUERY_STRING}RewriteRule ^(.*)-pr-(.*).html$ product_reviews.php?products_id=$2&%{QUERY_STRING}RewriteRule ^(.*)-pri-(.*).html$ product_reviews_info.php?products_id=$2&%{QUERY_STRING}RewriteRule ^(.*)-i-(.*).html$ information.php?info_id=$2&%{QUERY_STRING}RewriteRule ^(.*)-links-(.*).html$ links.php?lPath=$2&%{QUERY_STRING}RewriteRule ^index.php$ / [QSA,L,R=301] Pour la dernière règle j'ai testé toutes les modifs conseillés ici. C'est fou, cette règle est toute simple et en plus elle marche sur mon poste en local
The Jedi Posté 10 Mai 2006 Posté 10 Mai 2006 Question bête, par défaut, quand tu arrives sur le site, ce n'est pas index.php qui est appelé ? Je sais que j'avais un problème similaire et je m'étais résolu à faire une bidouille mais en PHP, dans le fichier appelé par tous mes scripts (mon index.php est appelé systématiquement, je fais des include après, plus simple à gérer). if( preg_match('/index.php/siU', $_SERVER['REQUEST_URI']) ){ header("HTTP/1.1 301 Redirect Permanent"); location("/"); }
Spidetra Posté 10 Mai 2006 Auteur Posté 10 Mai 2006 Question bête, par défaut, quand tu arrives sur le site, ce n'est pas index.php qui est appelé ? <{POST_SNAPBACK}> Non. Enfin, index.php si j'arrive à la racine du site. Mais ça c'est normal. Merci pour ton astuce en Php. Je l'avais déjà lu ( peut-être sur ce forum ). Je désire intervenir au niveau Apache, et non pas au niveau Php.
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant