Question nouvelle version site et PR

WRInaute discret
Bonjour à tous,

J'avais une page index.htm qui avait un PR de 4.

Je viens de refaire mon site, et la page index.htm s'appelle maintenant index.php.

J'ai donc réalisé une redirection 301 (redirect permanent).

Ma question est simple. La redirection va t'elle transmettre le PR à index.php ? (car dans la google barre, j'ai PR0).

Merci pour vos réponses.
 
WRInaute accro
Une bonne partie des facteurs qui permettent la détermination d'un PageRank sera transmise.

Le PR en lui même ne le sera pas.
 
WRInaute discret
Merci pour ta réponse HawkEye

Y a t'il un moyen de transformer mon index.php en index.htm pour que le nouvel index.htm remplace l'ancien index.htm avec le PR 4 ?

Je ne sais pas si je suis bien clair là :oops:
 
WRInaute accro
Sisi, le fichier .htaccess mon très cher :) Je l'utilise aussi, voici ce qu'il faut rajouter dans ton .htaccess pour interpreter les pages html avec du php

AddType application/x-httpd-php .htm
AddType application/x-httpd-php .html

Ravi de t'avoir aidé lol
 
WRInaute discret
Héhé, j'avais bien mis ce code à la base, mais il est interdit chez ovh :twisted:

Donc si tu as une autre solution ?

:wink:
 
WRInaute accro
Pourtant c'était ce qui pouvait le mieux s'adapter :/ Je ne vois pas d'autre solution. Si tu as vraiment du code php dans ton fichier index.php et que seul l'extension .php peut interpréter le php. Je vois pas désolé... Pour moi c'est impossible de repasser à .html dans ce cas
 
WRInaute discret
et oui j'avais d'ailleurs développé tout mon site comme ça, en nommant toutes mes pages en .htm avec des include php le tout avec le AddType en question...

Et là cata quand je mets en ligne, le AddType fait que rien ne fonctionne... donc je renomme mes 60 pages en .php

4 heures de perdues :x
 
WRInaute accro
Dans .htaccess:

Code:
RewriteEngine On
RewriteRule ^index.html$ index.php [L]

Dans index.php (au tout début, avant le moindre espace):

Code:
<?php
if($_SERVER['REQUEST_URI'] == "/index.php")
	{
	header("Status: 301 Moved Permanently", false, 301);
	header("Location: http://".$_SERVER['HTTP_HOST']."/");
	exit;
		die("Redirection");
	}
?>

Plus:

- vérifier tes liens internes: doivent pointer vers la racine du site, pas vers index.php ou index.html.

@++
 
WRInaute discret
Merci encore Hawkeye :wink:

Si je fais comme tu dis, cela veut dire que sur toutes mes autres pages, je dois mettre www;nomdemonsite.com et pas www;nomdemonsite.com/index.php c'est bien ça ?

Dois-je faire de même pour mes autres pages ?
 
WRInaute discret
Hmmm, je viens d'essayer sur mon index.php avec le code que tu as donné + le code dans le HTaccess.

J'ai le message d'erreur suivant:

Code:
Redirection de page incorrecte        

Firefox a détecté que le serveur redirige la demande pour cette adresse d'une manière qui n'aboutira pas.
          
    *   La cause de ce problème peut être la désactivation ou le refus
          des cookies.

Peut être que le code RewriteRule ^index.html$ index.php [L] ne fonctionne pas chez OVH ?
 
WRInaute accro
C'est surtout important pour la home page.

Les liens que tu recevras depuis d'autres sites (annuaires, partenaires et personnes qui te citent) se feront par défaut vers "http://www.nomdetonsite.com/", pas vers "http://www.nomdetonsite.com/index.php".

Si toi, tu fais ton liage interne en privilégiant index.php ou index.html, tu dilues fortement la pertinence.
Veille donc à ce que tes liens internes pointent vers la racine du site plutôt que vers une page index.html.

Pour les pages internes, c'est différent: la personne qui te fait un lien va récupérer la page qui l'intéresse, à savoir celle que tu lui as affiché; donc si tu lui affiche un contenu sur "../dir/subdir/index.html" , il fera un lien vers ça, même si c'est aussi accessible via "../dir/subdir/" tout court.


De manière plus générale, par sécurité et souci d'unicité du contenu, il peut être intéressant de faire vérifier tes URI par ton script. C'est ce que je fais sur mon annuaire par exemple:

Essaye...

ça: http://annuaire.indexweb.info/index.php?id=159
ça: http://annuaire.indexweb.info/reference ... 159-1.html
ça: http://annuaire.indexweb.info/redirecti ... 159-1.html

-> une seule page est autorisée, et toute erreur est corrigée (dans la limite du possible).
 
WRInaute discret
Rebonsoir !

Bon avec tes derniers codes, ça à l'air de bien fonctionner.

Si tu as 2 minutes, peux-tu jeter un coup d'oeil sur mon site:
http://www.princessedunjour.com ?

Par contre, que faire maintenant pour la page index.htm ?
Avant j'avais mis une redirection permanente vers index.php, dois-je mettre une redirection vers mon nom de domaine uniquement ?

Quand je mets http://www.princessedunjour.com/index.php ça redirige automatiquement vers http://www.princessedunjour.com, je crois que c'est voulu non ?

Merci encore, je suis archi débutant sur ces questions techniques :wink:
 
WRInaute accro
Pour faire bien, il faudrait rediriger en fait "index.html" et "index.php" vers la racine.

Donc ce que tu peux tester, c'est de modifier le code php que je t'ai filé pour faire ceci:

Code:
<?php
if($_SERVER['REQUEST_URI'] == "/index.php" || $_SERVER['REQUEST_URI'] == "/index.html")
   {
   header("Status: 301 Moved Permanently", false, 301);
   header("Location: http://".$_SERVER['HTTP_HOST']."/");
   exit;
      die("Redirection");
   }
?>

-> Il se peut que ça boucle avec le code que je t'ai filé pour .htaccess. Si c'est le cas; tu peux retirer ce que je t'ai fait mettre dans .htaccess, tout simplement.

Résultat escompté:

index.html -> redirection vers "/"
index.php -> redirection vers "/"

"/" charge par défaut "index.html" s'il existe, sinon "index.php".

-> tant que tu ne mets pas physiquement un fichier index.html à la racine de ton serveur, tout roulera nickel.

(ça permet aussi de placer temporairement un index.html "physique" quand tu fais une grosse modif et que tu veux mettre le site en mode "maintenance" pour une très courte période de temps.

Dis-moi si ça convient.
 
WRInaute discret
HawkEye,

J'ai l'impression que c'est bon en effet, que je tappe:
/index.htm (mon fichier initial s'appelait .htm et pas .html, j'ai donc modifié ton code) ou /index.php, ça redirige vers la racine de mon nom de domaine.

Je n'ai pas l'impression que cela fasse boucle, tu me le confirmes ? Je n'ai effectivement aucun fichier .htm sur mon serveur, ça pioche donc le .php

Une dernière chose et je crois que ça sera parfait:
dois-je faire la même chose pour mes repertoires (par exemple /atelier) ?

Je te remercie en tout cas pour tous tes conseils :D
 
WRInaute accro
Content que ça convienne ;)

pp51 a dit:
Une dernière chose et je crois que ça sera parfait:
dois-je faire la même chose pour mes repertoires (par exemple /atelier) ?

Je dirais que non. Tu peux t'y amuser mais c'est une perte de temps à mon avis...
Comme précisé plus haut:

HawkEye a dit:
Pour les pages internes, c'est différent: la personne qui te fait un lien va récupérer la page qui l'intéresse, à savoir celle que tu lui as affiché; donc si tu lui affiche un contenu sur "../dir/subdir/index.html" , il fera un lien vers ça, même si c'est aussi accessible via "../dir/subdir/" tout court.
 
WRInaute accro
Et savez-vous comment faire l'inverse ? car je cherche juste à ce quand on tape comme sur le site ici:

https://www.webrankinfo.com/forum/

ca redirige sur

https://www.webrankinfo.com/forum/

j'ai essayé d'inverser /index.php et / dans le code php mais ca ne marche pas, une idée ?

je n'ai rien dit , cela fonctionne très bien ;), évidemment si j'oublie le chemin relatif du forum.

Bonne nuit à tous, quand je fais n'importe quoi, il est l'heure de dormir lol
 
Discussions similaires
Haut