Rewriting dynamique www.pseudo.nomdedomaine.com

Nouveau WRInaute
J'avais écris un script de rewriting qui fonctionnait très bien sous Apache 1.3 mais nous avons migré de serveur et le nouveau fonctionne avec Apache 2. Ce script est très simple :

http://www.pseudo.nomdedomaine.com/
Redirige vers :
http://www.nomdedomaine.com/fiches/fich ... udo=pseudo

Depuis que nous avons migré sur le nouveau serveur avec Apache 2 le script ne fonctionne plus correctement.

Voici le contenu du script placé dans un fichier .htaccess :
Code:
RewriteEngine on
RewriteCond   %{HTTP_HOST}                 ^www\.[^.]+\.castingmag\.com$
RewriteRule   ^(.+)                        %{HTTP_HOST}$1          [C]
RewriteRule   ^www\.([^.]+)\.castingmag\.com(.*) http://www.castingmag.com/eng/web/mem/crd/crd-01.php?login=$1 [R,L]

Quelqu'un a une idée ?
 
WRInaute occasionnel
Salut Bluelane,

Effectivement, il semblerait déjà que tu doives remplacer
%{HTTP_HOST}$1
par
%{HTTP_HOST}/$1

car ton nouveau serveur web ne préfixe pas avec le signe / initial.

Ton ensemble de règles me parait bien complexe, plutot qu'essayer de débuger, voici comment elle devrait se présenter (la tienne "bidouille" pour placer le nom de domaine dans l'URL puis en extraire le nom de login, c'est très laid je trouve, désolé, mais au moins c'est dit honnêtement :) )

Code:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\.([^\.]+)\.castingmag\.com$ [NC]
RewriteRule ^(.*)$ http://www.castingmag.com/eng/web/mem/crd/crd-01.php?login=%1 [R,L]

(a noter : virer le [NC] si tu ne veux pas que ça fonctionne aussi quand l'utilisateur utilise une URL du type W*W.machin.CastIngMag.Com)
 
Nouveau WRInaute
Merci beaucoup pour ton aide !!

J'ai utilisé directement ton script et tout fonctionne à merveille... Mais que je comprenne bien : c'était le passage de Apache 1.3 à Apache 2 qui posait un problème ? Ca a changé une règle d'interprétation dans mon script ? D'où l'antislash que tu m'as indiqué ?
 
WRInaute occasionnel
Oublie ce que j'ai dit à propos du "/", j'avais pas saisi toute la complexité de la règle que tu avais faite.

Disons que je sais pourquoi les règles que je t'indique marchent, mais que je ne sais pas pourquoi les tiennent ne marchent pas :)
 
Discussions similaires
Haut