Version complète: sur le forum Webmaster Hub : htaccess
Webmaster Hub > Création et exploitation de Sites Internet > Les langages du Net > Fichier .htaccess et réécriture d'URLs
grener
Je voudrais savoir si les regle de rewriting etaient communes a toutes les configurations de serveur.


J'utilise un htaccess qui passe tres bien sur un dedié mais pas sur un autre.

voici la ligne qui je crois n'est pas toujours compatible :

RewriteCond %{HTTP_HOST} ^([^.]+)\.ndd\.com[NC]
Dan
Salut Grener,

Ta condition est supposée être portable... avec toutefois un modulo:
si le sous-domaine est manquant, comme dans domaine.tld au lieu de www.domaine.tld, elle ne sera pas vérifiée.

On peut donc dire que dans ce cas elle n'est pas 100% portable.

Je l'écrirais:
CODE
RewriteCond %{HTTP_HOST} (([^.]+)\.)?ndd\.com  [NC]

ce qui rend le premier membre (caractères + point décimal) facultatif.
Mais là encore, elle n'est pas respectueuse de noms comme www.sousdom.dom.tld parce qu'il y a un point de trop.

Donc il vaudrait mieux mettre:
CODE
RewriteCond %{HTTP_HOST} ((.+)\.)?ndd\.com  [NC]

... du moins à mon avis wink.gif
Elentar
Sans vouloir détourner le topic, à propos de la portabilité de l'URL Rewriting... J'ai constaté que Apache 2.x comprennait apparemment les regex PCRE (Perl), ce qui produisait une erreur 500 sous Apache 1.x (qui n'a l'air de comprendre que les regex POSIX)

Connu ?
Ceci est une version "bas débit" de notre forum. Pour voir la version complète avec plus d'information, la mise en page et les images, veuillez cliquer ici.