interdire index.php et obliger www.example.com/

  • Auteur de la discussion Auteur de la discussion nin47
  • Date de début Date de début
WRInaute discret
bonjour je me suis apersu que GG avait indexé ma page example.com/index.php et example.com/ comment est ce que pourrai faire via un htaccess pour interdire monsite/index.php et le rediriger vers l'autre :?: :?:
 
WRInaute discret
euh je suis vraiment désolé mais jai pas trouvé ni dans le carree vert ni dans la patate violette :oops: :oops: :oops:
dans le carre jai juste trouvé comment faire le contraire de ce que je veux faire c'est a dire comment mettre index.php a la place de /
donc voilà si quelqun peut m'aider je comprend vrament rien à l'UR :x :x :x
 
WRInaute occasionnel
salut moi j'ai fait un truc comme ca et ca a l'air de fonctionner :)
Code:
if($_SERVER['REQUEST_URI'] == "/index.php")
	{
	header ('HTTP/1.1 301 Moved Permanently');
	header('Location: http://www.exemple.com');
	}
à mettre avant tout code dans la page biensur pour ne pas avoir d'erreur de header ;)
 
WRInaute occasionnel
medium69 a dit:
ça marche pour moi ;)

Dans le htaccess cela n'allait pas et je ne sais pas pourquoi :(

pareil j'avais essayer via le htaccess ca me faisais une erreur.
sinon en general "on dirait" que les redirection en php sont mieu prise en compte par les moteur mais c'est peu etre qu'une impression ... quelqu'un aurai un avis unexperience a ce sujet?
 
WRInaute passionné
Moi j'avais pas d'erreur mais il restait sur la même page :(.

Enifn ! Je vais peut-être revoir mon site bien positionné :wink:
 
WRInaute discret
Désolé pour le up, mais depuis le temps personne ne connaît une solution en htaccess?

Ou bien la solution donné ici est-elle la solution standard?

Merci bien!
 
Membre Honoré
WRInaute occasionnel
noel2008 a dit:
Désolé pour le up, mais depuis le temps personne ne connaît une solution en htaccess?

Ou bien la solution donné ici est-elle la solution standard?

Merci bien!

Essaie ça :

Code:
###Redirige tous les index.php à la racine du répertoire
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /.*index\.php\ HTTP/ 
RewriteRule ^(.*)index\.php$ /$1 [R=301,L]
C'est pas de moi à l'origine, mais chez moi ça fonctionne nickel et s'applique à tous les répertoires sans avoir besoin de réécrire une règle spécifique à chaque répertoire.

Tu le place en dessous de toutes tes autres règles de réécriture. J'espère que ça t'aidera

Par exemple si tu as un forum qui te ramène toujours vers /repertoire/index.php tu n'as pas besoin de modifier tous les liens dans le code, ni de bricoler toutes les redirections (si tu le fais, c'est mieux quand même, c'est plus propre), et ton visiteur reviendra toujours à /repertoire/

Google avec la redirection 301 ne connaîtra à terme plus que /repertoire/
 
Discussions similaires
Haut