Page 1 sur 1

condition HTACCESS

Posté : 07 avr. 2012, 22:54
par Zildjian80
Bonjour à tous !

j'ai un code aléatoire derrière mon nom de domaine sous cette forme :
http://www.nomdedomaine.fr/a1d5f9

grâce au htaccess je voudrais que :
quelque soi le code tapé ça redirige vers une page spécifique qui récupère ce code dans une variable
par exemple http://www.nomdedomaine.fr/url.php?code=$1

SAUF SI

ce sont des pages bien spécifique qui sont appelées comme index.html, contact.php...
dans ce cas ce sont bien les pages en question qui seront appelées.

J'ai pensé à ça :

Code : Tout sélectionner

Options +FollowSymlinks RewriteEngine on RewriteCond ^(.*) !^(index.php|index.html|contact.php|contact.html) [NC] RewriteRule ^(.*) url.php?code=$1 [QSA,R=301,L]
Qu'en pensez-vous ?
Merci bien !

Re: condition HTACCESS

Posté : 07 avr. 2012, 23:40
par Ryle
Tu peux simplifier cela en testant dans ta condition si l'url demandée correspond à un fichier/dossier de ton site ou pas :

Code : Tout sélectionner

RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule (.*) url.php?code=$1 [QSA,R=301,L]

Re: condition HTACCESS

Posté : 08 avr. 2012, 14:47
par Zildjian80
Merci.

alors quand je tape rien derrière le nom de domaine, ou index.php, ça renvois bien vers la page d'accueil.

Mais il y a un truc bizarre en local c'est que quand je tape un code aléatoire il me redirige vers

Code : Tout sélectionner

http://localhost/C:/wamp/www/nomdedomaine/url.php?code=a2z6
au lieu de

Code : Tout sélectionner

localhost/nomdedomaine/url.php?code=a2z6
en me disant
Forbidden
You don't have permission to access /C:/wamp/www/nomdedomaine/url.php on this server.

et ensuite impossible de retourner sur n'importe quelle page car il me dit :
Not Found
The requested URL /www/nomdedomaine/ was not found on this server.


Quand je suis en ligne, quand je tape un code aléatoire il me dit :
"La page n'est pas redirigée correctement
Firefox a détecté que le serveur redirige la demande pour cette adresse d'une manière qui n'aboutira pas."
et mon url se transforme en :

Code : Tout sélectionner

http://www.nomdedomaine.fr/homez.373/monsite/nomdedomaine/url.php?code=homez.373/monsite/nomdedomaine/url.php&code=homez.373/monsite/nomdedomaine/url.php&code=homez.373/monsite/nomdedomaine/url.php&code=homez.373/monsite/nomdedomaine/url.php&code=homez.373/monsite/nomdedomaine/url.php&code=homez.373/monsite/nomdedomaine/url.php&code=homez.373/monsite/nomdedomaine/url.php&code=homez.373/monsite/nomdedomaine/url.php&code=homez.373/monsite/nomdedomaine/url.php&code=homez.373/monsite/nomdedomaine/url.php&code=homez.373/monsite/nomdedomaine/url.php&code=homez.373/monsite/nomdedomaine/url.php&code=homez.373/monsite/nomdedomaine/url.php&code=homez.373/monsite/nomdedomaine/url.php&code=homez.373/monsite/nomdedomaine/url.php&code=homez.373/monsite/nomdedomaine/url.php&code=homez.373/monsite/nomdedomaine/url.php&code=homez.373/monsite/nomdedomaine/url.php&code=homez.373/monsite/nomdedomaine/url.php&code=a2e3
Je précise que ce site est en multi domaine au même niveau que mon répertoire www dans mon hébergement.