Aller au contenu

problème de redirection


neitsabc

Sujets conseillés

Bonjour,

je suis webmaster d'une association de tir à l'arc. Je suis en train de migrer l'ensemble du site (en HTML3.2) vers du XHTML/CSS.

Pour ne pas gêner les adhérents, je fais la migration en local sur mon ordinateur avec easyphp 1.8.

Je ne sais pas trop à quel endroit poster ce message.

La conversion est complètement terminée de mon côté, mais je viens de me rendre compte d'un gros problème suite à une série de test: le site est parfaitement visible avec les navigateur firefox 2.0, Netscape et Opera mais impossible de l'afficher via IE 6 et 7, ni Safari (PC).

IE me renvoie quelque fois le message "Impossible d'afficher la page".

Safari m'indique "Too many redirects occurred trying to open ...".

J'ai mis en ligne la première page du site, et j'ai le même problème http://amta.maurepas.free.fr/v2.0/.

Le validateur w3c n'arrive pas non plus à récupérer la page: le message est "I got the following unexpected response when trying to retrieve http://amta.maurepas.free.fr/v2.0/: 302".

J'ai trouvé via l'outil Analyseur d'entête http de webmaster-hub que la requête reçue par le navigateur est:

URL: http://amta.maurepas.free.fr/v2.0/

HTTP/1.1 302
Date: Thu, 05 Jul 2007 16:50:48 GMT
Server: Apache/ProXad [May 15 2007 17:32:34]
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Pragma: no-cache
X-Powered-By: PHP/4.4.3-dev
Set-Cookie: PHPSESSID=1b8a0f4e0b746f5e00be21c78d5adcd5; path=/
Set-Cookie: cookie_style=Classique; expires=Sun, 05 Jul 2009 04:52:45 GMT; path=/; domain=amta.maurepas.free.fr
Location:
Connection: close
Content-Type: text/html

Effectivement, le paramètre Location est vide.

Est-ce un bug d'apache ?

une mauvaise configuration du serveur web (mais je n'ai pas accès à la configuration des serveurs de free, je ne pourrais rien modifier...) ?

Je suis preneur de toutes les pistes qui pourront m'être apporter (:

Merci d'avance

Sébastien

Lien vers le commentaire
Partager sur d’autres sites

Bonjour,

La question est: comment une page peut-elle renvoyer un code 200 (ok) à Opera et 302 (redirection) à la plupart des autres navigateurs et robots ?

On peut faire cela en testant le user-agent du visiteur. Tu as créé toi-même l'application utilisée ?

Jean-Luc

Lien vers le commentaire
Partager sur d’autres sites

J'ai développé uniquement les pages php du site.

Je ne pense pas que les codes de retour soient différents en fonction du navigateur (ça m'étonnerais que Free configure ses serveurs de la sorte). Je pense plutôt que ce sont les navigateurs qui ne gère pas la valeur location à vide de la même façon.

je peux vérifier en local les codes retour de easyphp en snifant les paquets réseaux... Je doute qu'il soit fonction du navigateur.

Je rajoute d'autres questions aux premières

- est-ce que le paramètre location à vide est un bug apache ou pas ?

- y a t'il a moyen de contourner ce problème ?

- pourquoi la version 1 du site (en php aussi) ne rencontre pas ce problème ? est-ce dû à l'entête du site (doctype et consors) ?

Lien vers le commentaire
Partager sur d’autres sites

Je ne pense pas que les codes de retour soient différents en fonction du navigateur (ça m'étonnerais que Free configure ses serveurs de la sorte). Je pense plutôt que ce sont les navigateurs qui ne gère pas la valeur location à vide de la même façon.
Que la gestion du code 302 avec "location" vide soit différente d'un navigateur à l'autre est vraisemblable. D'accord là-dessus.

N'empêche que le serveur web de Free envoie normalement un code 200 quand on lui demande une page. C'est d'ailleurs bien le cas avec la page [i]http://amta.maurepas.free.fr/. Pour ta nouvelle page, quelque chose envoie, par erreur, un code 302; je pense que ça ne peut être que ton application (bug ou paramètre de l'installation).

Jean-Luc

Lien vers le commentaire
Partager sur d’autres sites

Firefox reçoit bien un code 200, je viens de vérifier.

Apparemment tu as un .htaccess qui traïne, vérifie ce qu'il y a dedans.

Lien vers le commentaire
Partager sur d’autres sites

J'ai finalement résolu mon problème à force de mettre des echo dans les différentes fonctions utilisées: il trainait dans une vieille bibliothèque que je pensais ne plus utiliser la ligne

header ("Location: $loaction");

. La variable loaction n'existant pas...

Merci à tous pour les pistes données.

Sébastien

Lien vers le commentaire
Partager sur d’autres sites

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...