Slash en fin d'url, y'a un truc qui m'échappe...

WRInaute discret
Bonjour à tous,

après avoir lu plusieurs posts sur la présence ou non d'un slash en fin d'url sur un lien, je me pose toujours quelques questions auxquelles je n'ai pas trouvé de réponses.

la première etant la suivante:

sur mon site et sur la page contact, si j'essaie d'y acceder par cette url: example.com/contact.php, aucun souci, j'y accède.

si en revanche je rentre cette url: example.com/contact.php/, là la page ne se charge qu'à moitié, elle ne charge pas les objets flash.

première question: pourquoi?

deuxièmement, dans mon diaporama, j'ai malencontreusement (y'a environ un mois) mis un lien sur une image du diaporama sous la forme url+slash à la fin comme suit: example.com/promoSemaine.php/

et là, depuis quelques jours, gwt me dit que j'ai un title et une description en double.
je ne comprends pas, je n'ai pas deux pages promoSemaine.php, pourquoi alors indexerait-il deux urls?
je n'ai pas la page: example.com/promoSemaine.php
et la page: example.com/promoSemaine.php/

je n'ai qu'une seule page! je suis perdu.

dans le même cas de figure, gwt me dit que j'ai aussi deux pages avec le title en double:

/ (oui oui, juste slash), j'imagine donc qu'il s'agit de la racine donc de: example.com et
index.php

celà veut-il dire qu'il faut que je redirige tout ce qui est monSite.fr sur monSite.fr/index.php? (en 301)

pour finir, pourquoi parle-t-on de balise en double dès lors qu'il n'y a qu'une seule page?
si j'avais deux pages distinctes, je comprendrais mais ce n'est pas le cas.

en tous les cas, merci à tous pour vos explications si vous en avez et bonne journée.
 
WRInaute accro
pour les exemples le domaine c'est "www.example.com" (ça évite de donner du jus a sonsitedotcom entre autre)

Ensuite derrière une extension de fichier (genre ".php") il n'y a jamais de "/" tu peut rencontrer un "?" ou "#" mais rien d'autre.
Tu peut en revanche croiser des urls finissant par "/" auquel cas c'est de dossiers (virtuels ou pas). Tu en verra d'autres ans extension ni "/" c'est du a la réécriture.

Dans ton cas d'url avec ".php/" (ce qui est très très moche) ton site répond sur les deux modes (avec et sans le slash) en fournissant la même page (c'est un défaut de conception je pense). Bref google qui croise deux urls crawl les deux et obtiens le même contenu d'où le titre en double.
Pour ton cas ou la page se charge pas complètement c'est aussi peut être car le serveur fait une approximation sur l'url mais qu'il n'y arrive pas pour tout donc tu as certains trucs mais pas tout ... ce qui explique la page partielle.
Tu rencontre parfois ce genre de problème a cause de ce module apache qui tente de corriger tes erreurs.
 
WRInaute discret
Merci Spout et merci zeb,

Ensuite derrière une extension de fichier (genre ".php") il n'y a jamais de "/" tu peut rencontrer un "?" ou "#" mais rien d'autre.

aucun lien de mon site possède un slash à la fin. je rappelle que c'est un seul lien dans mon diaporama qui avait une url avec un slash à la fin, c'est une erreur, je ne sais pas pourquoi j'ai mis un slash à la fin de cette url. je m'en suis rendu compte rapidement et l'ai supprimé rapidement mais maintenant gwt me parle (avec 3 semaine de retard) de title en double, je suppose qu'il va falloir 2 mois pour qu'il se rende compte que le lien n'existe plus et qu'il supprime de gwt le title en double?

d'autre part, pourriez-vous m'éclairer sur, encore une fois ce qu'il considère comme title en double concernant ma page d'accueil ou il me dit title en double ici:

/
index.php

où le symbole slash et index.php sont deux urls différentes.

pour finir, zeb, je sais que c'est mieux sans extension, mais si soudainement je modifie mes noms de pages et que je supprime les extensions (.php), que va-t-il se passer sur le référencement de mon site?

dans le doute, j'ai laissé comme ça. même si c'est moins bien avec l'extension, je n'ai pas pris le risque de les enlever.

bonne fin d'ap à tous et merci.
 
WRInaute accro
flyeric a dit:
il me dit title en double ici:
/
index.php
met une redirection 301 de l'url avec index.php vers celle sans "index.php" là il prend en compte deux pages identiques en compte donc DC et titre + description en double (c'est pas bien grave si tu fait une 301 ça va disparaitre)

flyeric a dit:
pour finir, zeb, je sais que c'est mieux sans extension, mais si soudainement je modifie mes noms de pages et que je supprime les extensions (.php), ...
Il ne me semble pas avoir dit que c'est mieux sans extension (perso je préfère avec ça me semble plus naturel)
 
WRInaute accro
zeb a dit:
Pour un "dossier" oui mais pas pour un script identifié avec nom.extension :?: :!:
Puisque j'te dis que oui :lol:
index.php/module/action/param1/param2

PHP:
<span class="syntaxdefault"><br /></span><span class="syntaxkeyword"><?</span><span class="syntaxdefault">php<br />echo $_SERVER</span><span class="syntaxkeyword">[</span><span class="syntaxstring">'PATH_INFO'</span><span class="syntaxkeyword">];<br />&nbsp;</span><span class="syntaxdefault"></span>
Affichera:
/module/action/param1/param2

Et c'est tout à fait correct.
 
WRInaute accro
oui OK vue :oops: j'avais pas percuté sur les "paramètres" qui peuvent contenir des slaches
Enfin ça reste assez pourri comme url ...
 
WRInaute discret
met une redirection 301 de l'url avec index.php vers celle sans "index.php" là il prend en compte deux pages identiques en compte donc DC et titre + description en double (c'est pas bien grave si tu fait une 301 ça va disparaitre)

quelques précisions stp:

1) je fais la redirection dans le htaccess? (question un peu bête mais on peut aussi faire une redirection d'une page donc...)

2) je dois rediriger "monSite.fr/index.php" vers "monSite.fr" (là non plus, je ne voudrais surtout pas faire de bourde)

3) j'ai trouvé deux exemples différents, les deux sont-ils bons? :

Code:
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.php\ HTTP/
RewriteRule ^index\.php$ http://www.monSite.fr/ [R=301,L]

Code:
RewriteCond %{THE_REQUEST} ^.*/index.php
RewriteRule ^(.*)index.php$ http://www.monSite.fr/$1 [R=301,L]

pourquoi puisque google sait que naturellement lorsque l'on tape une url sans index (.php ou .html) on est redirigé dessus, pourquoi alors indexe-t-il les deux formats? pas très logique tout ça...
 
WRInaute accro
flyeric a dit:
pourquoi puisque google sait que naturellement lorsque l'on tape une url sans index (.php ou .html) on est redirigé dessus, pourquoi alors indexe-t-il les deux formats? pas très logique tout ça...
La seconde règle me semble plus logique sauf que j'aurais pas mis le $1 a la fin mais ça dépend du système.

RewriteCond %{THE_REQUEST} ^.*/index.php
RewriteRule ^(.*)index.php$ http://www.monSite.fr/ [R=301,L]

faut tester ça prend deux secondes donc pas de risque au pire tu te tape une erreur 500 au refresh et tu commente jusqu'a que tu trouve la solution qui permet de ne pas avoir index.php dans l'url

GG indexe car il indexe tout et il sait comme tout le monde que c'est la même chose sauf que cela peut ne pas l'être donc ...
 
WRInaute discret
j'ai testé, tout fonctionne.

mon test:

lorsque je rentre cette adresse dans la barre d'adresse:

Code:
http://www.monSite.fr/index.php

je suis redirigé sur:

Code:
http://www.monSite.fr

impéccable, merci zeb et bonne journée.
 
Discussions similaires
Haut