Boucle de redirection (dixit Chrome) mais qui fonctionne "quand même" !

WRInaute accro
Bonjour

J'ai un p'tit soucis sur mon blog Wordpress, suite à ma migration depuis mon ancien vieux Dotclear.

Les URL avaient la forme suivant :
-blog.aube-nature.com/?2011/01/13/123-titre-du-billet

Elles ont désormais la forme suivante :
-blog.aube-nature.com/titre-du-billet

Comme via le htaccess c'était chaud bouillant avec ce p... de point d'interrogation, je suis passé par PHP (header.php plus précisément), et ça fonctionne plutôt bien. Sauf que Google Chrome me ressort systématiquement une boucle de redirection !

Le code que j'ai utilisé :
Code:
	// Lecture des variables serveur
	$server_name = $_SERVER['SERVER_NAME'];	// Nom du "serveur"
	$sURL=$_SERVER["QUERY_STRING"];			// Querystring (ce qu'il y a après le "?")
	
	$reg="/^\d{4}\/\d{2}\/\d{2}\/\d+-.+/";
	if(preg_match($reg,$sURL)) {
		// Décomposition
		$newURL=substr(strstr($sURL,'-'),1,strlen(strstr($sURL,'-'))-1);
		header('HTTP/1.1 301 Moved Permanently', false, 301);
		header("Location: http://" .$server_name."/$newURL");
		exit();
	}

Du coup il semble que ça "boucle" qqpart, mais où ??? D'autant que si je rafraîchis la page, ça fonctionne PARFAITEMENT !

Une idée sur cette question ? Apparemment ça ne semble pas gêner Google pour l'indexation, mais bon c'est un peu dommage.

J'ai aussi le problème de liens de la forme encodée (les caractères genre "&" ou "?" apparaîssent avec des codes ASCII et des % !) sur quelques URL détectées par les GWT. Autant de BL perdus finalement...

Je pensais donc gérer ça également en PHP, qu'en pensez-vous ?
 
WRInaute accro
Un premier et dernier up...

Apparemment IE n'a aucun problème, mais ça troue aussi le c.. à Firefox !

Exemple : -http://blog.aube-nature.com/?2007/05/31/138-protection-anti-moustiques

( doit renvoyer vers http://blog.aube-nature.com/protection-anti-moustiques )


Je ne comprends VRAIMENT pas pourquoi c'est considéré comme une "boucle" !!! Sur tous les autres sites où j'ai utilisé cette technique à ce jour, ça fonctionne :(
 
WRInaute accro
AH !

Alors là je sèche 8-\

Car en cliquant DIRECT sur le nouveau lien, j'ai ma boucle de redirection également !!! Problème avec l'URL Rewriting Wordpress ???

Je saisis plus là !
 
WRInaute accro
Solution (j'ai trouvé) : c'était lié à WP SuperCache couplé à certaines de mes optimisations apparemment.

J'ai simplement rajouté le bout manquant à mon htaccess, que le plugin n'a pas réussi à ajouter automatiquement :
Code:
# BEGIN supercache
<IfModule mod_mime.c>
  <FilesMatch "\.html\.gz$">
    ForceType text/html
    FileETag None
  </FilesMatch>
  AddEncoding gzip .gz
  AddType text/html .gz
</IfModule>
<IfModule mod_deflate.c>
  SetEnvIfNoCase Request_URI \.gz$ no-gzip
</IfModule>
<IfModule mod_headers.c>
  Header set Vary "Accept-Encoding, Cookie"
  Header set Cache-Control 'max-age=300, must-revalidate'
</IfModule>
<IfModule mod_expires.c>
  ExpiresActive On
  ExpiresByType text/html A300
</IfModule>
# END supercache


Pfffiouuu bon cette fois c'est bon ! Ce que je ne comprenais pas c'est que je n'avais pas de boucle de redirection lorsque j'arrivais de Google, ou en cliquant direct depuis mon site ?


Fin du monologue :lol: (si toutefois ça peut servir un jour à d'autres !)
 
Discussions similaires
Haut