Aller au contenu

Sujets conseillés

Posté (modifié)

Bonjour,

Je souhaite faire une redirection avec un fichier htaccess me qui permete de rediriger :

sousdomaine.domaine.tld/page.php?id=15 vers www.sousdomaine.domaine.tld/page/15/

J'ai déjà fait ca :

RewriteEngine on
RewriteCond %{HTTP_HOST} ^sousdomaine\.domaine\.tld[NC]
RewriteRule ^(.*)$ http://www.sousdomaine.domaine.tld/$1 [QSA,R=301]

mais il me manque la redirection du paramètre.

Si quelqu'un peut m'aider merci

Modifié par pif_125
Posté (modifié)

J'ai testé ca marchait pas mais ca marche comme ca :

RewriteEngine on
RewriteCond %{HTTP_HOST} ^test\.domaine\.tld [NC]
RewriteRule ^(.*)$ http://www.test.domaine.tld/$1 [QSA,R=301]
RewriteRule ^page/([0-9]+)/$ page.php?id=$1 [L]

Ca vous parait bien?

Est ce que il existe une variable pour ne pas avoir a taper le nom de domaine et le sous domaine, un truc comme $_SERVER['PHP_SELF'] mais pour le fichier htaccess ?

Modifié par pif_125
Posté

Salut, je pensais que tu voulais réécrire

sousdomaine.domaine.tld/page.php?id=15

vers

www.sousdomaine.domaine.tld/page/15/

d'ou ma réponse, mais visiblement c'est le contraire que tu souhaitais ! d'ou la confusion.

Heureux que cela fonctionne.

++

Patrick

Posté

Il est clair que tu ne peux pas faire une redirection externe et une redirection interne en une seule opération.

Donc effectivement il faut procéder en 2 étapes:

- ajouter le www

- traiter la variable

Et la variable est justement %{HTTP_HOST} que tu utilises... il n'y en a pas d'autre pour le "hostname" sous Apache.

Veuillez vous connecter pour commenter

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



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