Version complète: sur le forum Webmaster Hub : Url rewriting et hébergement multi-domaines
Webmaster Hub > Création et exploitation de Sites Internet > Les langages du Net > Fichier .htaccess et réécriture d'URLs
SebOmaX
Bonjour,

Grâce à l'option multi-domaine d'OVH, j'ai désormais 2 domaines qui pointent sur un hébergement.

- Le domaine1 www.domaine1.com pointe à la racine du serveur /www/
- Le domaine2 www.domaine2.com pointe sur le dossier /www/domaine2/

J'utilise ces règle de réécriture pour le domaine1:

CODE
RewriteBase /
RewriteRule ^(motif1|motif2)([0-9]+)--.*\.html$ /index.php?param1=$1&param2=$2 [L]

et j'aimerais utiliser les même pour le domaine2:
CODE
RewriteBase /domaine2/
RewriteRule ^(motif1|motif2)([0-9]+)--.*\.html$ /domaine2/index.php?param1=$1&param2=$2 [L]


L'url rewriting fonctionne bien pour le domaine1 mais j'ai beau changé le dossier de RewriteBase ou de RewriteRule, je n'arrive pas à le faire fonctionner pour le domaine 2 wacko.gif.

Dois-je mettre un seul .htaccess à la racine de mon serveur ou bien un .htaccess par dossier /domainex/ ? Qu'est-ce qui cloche r_question6161.gif
bertimus
Je suis pas une star du rewriting mais tu pourrais essayer ceci : c'est-à-dire supprimer "domaine2", tout comme dans ton premier fichier... ce qui donne :

CODE
RewriteBase /
RewriteRule ^(motif1|motif2)([0-9]+)--.*\.html$ /index.php?param1=$1&param2=$2 [L]

Ben oui, à mon sens pas besoin "domaine2" puisque ça risque de faire des URL du type domaine2/domaine2/...

Ce n'est qu'une proposition hein, à tester wink.gif
SebOmaX
Ca ne marche pas non plus, que j'essaie avec le .htaccess dans /www/ ou dans /www/domaine2/ sad.gif...

D'ailleurs dois-je utiliser un seul .htaccess (dans /www/) ou plusieurs (dans chaque dossier correspondant à un sous-domaine)?
SebOmaX
Bon j'ai déjà une réponse : il faut un .htaccess dans chaque dossier. Chacun valide les règles de son propre domaine.

Un problème subsiste, les règles fonctionnent pour le forum sur les 2 domaines et mais pour les url situées à la racine, elles fonctionnent sur le domaine1 et pas sur le domaine2 wacko.gif.
CODE
Options +FollowSymlinks
RewriteEngine On
RewriteBase /

# réécriture des url à la racine du domaine
RewriteRule ^(fr|de)([0-9]+)--.*\.html$ /index.php?module=fiche&fiche_id=$2&langue=$1 [L]
RewriteRule ^categorie-\.html /index.php?module=categorie&code_cat=0&langue=fr [L]

# réécriture des url du forum
RewriteRule ^forum/.+/([^/]+\.html)$ /forum/$1 [R=301,L]
RewriteRule [.]*-vf([0-9]*) /forum/viewforum.php?%{QUERY_STRING}&f=$1
RewriteRule [.]*-vp([0-9]*) /forum/viewtopic.php?%{QUERY_STRING}&p=$1
RewriteRule [.]*-vt([0-9]*) /forum/viewtopic.php?%{QUERY_STRING}&t=$1
RewriteRule [.]*-vc([0-9]*) /forum/index.php?%{QUERY_STRING}&c=$1


Un exemple:
- http://www.allemagne-au-max.com/index.php?...1&langue=fr
url rewrité => http://www.allemagne-au-max.com/fr11--.html FONCTIONNE
- http://www.allemagne-au-max.com/forum/viewtopic.php?p=11#11
url rewrité => http://www.allemagne-au-max.com/forum/image-vp11.html#11 FONCTIONNE

- http://www.bonjour-frankreich.com/forum/vi...pic.php?p=11#11
url rewrité => http://www.bonjour-frankreich.com/forum/image-vp11.html#11 FONCTIONNE
- http://www.bonjour-frankreich.com/index.ph...1&langue=fr
url rewrité => http://www.bonjour-frankreich.com/fr11--.html FONCTIONNE PAS


Si vous trouvez ce qui cloche, n'hésitez pas à le faire remarquer car je vois pas pourquoi une règle fonctionne dans un cas et pas dans l'autre unsure.gif ...
SebOmaX
Ah le nul shutup.gif, il suffisait simplement d'ajouter un / dans les règles :S !

CODE
RewriteRule ^/(fr|de)([0-9]+)--.*\.html$ /index.php?module=fiche&fiche_id=$2&langue=$1 [L]


Tout marche nickel désormais biggrin.gif
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.