Jump to content
captain_torche

Redirection en fonction d'un referer

Rate this topic

Recommended Posts

Bonjour,


Je vous explique la situation :



- J'ai un lien d'un premier site (A) pointant vers une page d'un site (B)


- Le site (B) redirige ses pages inconditionnellement vers un site ©


- Sur le site ©, j'aimerais afficher une page spécifique si le referer vient de (A).



Sachant que je n'ai le contrôle que sur ©, voici ce que j'ai déjà tenté de faire :


RewriteCond %{HTTP_REFERER} siteA.com/page_specifique.html
RewriteRule (.*) mapage.html [R=301,L]


Le souci, c'est que la redirection ne perdant pas le referer, je crée une boucle de redirection.



Comment faudrait-il faire pour contourner le souci (Avec un .htaccess) ?


Share this post


Link to post
Share on other sites

Tu veux absolument un 301 (i.e. que le client reçoive la nouvelle URL finale), ou tu veux juste afficher le contenu de mapage.html dans ce cas?

Dans le premier cas, tu dois pouvoir ajouter

RewriteCond %{REQUEST_URI} !mapage.html
Dans le deuxième, tu vires simplement le R=301, non?

Moi et les RewriteRules ça fait 2 et demi, donc je ne garantis rien :-)

Jacques.

Share this post


Link to post
Share on other sites

J'avais déjà tenté cette condition mais ça ne change rien.



Sans la redirection 301, j'ai une erreur 404...


Share this post


Link to post
Share on other sites

Je me dis que c'est probablement plutôt /mapage.html dans la RewriteCond.

Si tu as un 404, c'est que tu donnes une URL qui est elle-même rewritée, non? Dans ce cas il faut soit que tu donnes l'adresse finale, soit que tu vires le [L] mais ça ouvre un autre sac de noeuds.

Jacques.

Share this post


Link to post
Share on other sites

J'ai déjà un rewriteBase /, donc je me passe du slash.



Supprimer le [L] ne fonctionne pas (Il m'affiche la home), je vais essayer de voir ce que je peux faire avec l'url définitive.


Share this post


Link to post
Share on other sites

Je ne pense pas que RewriteBase s'applique à RewriteCond, mais uniquement à RewriteRule, donc je pense que le / est nécessaire. Note aussi que si tu as des paramètres dans l'URL, ils ne seront pas dans %{REQUEST_URI} mais dans %{QUERY_STRING}.

Jacques.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...