Aller au contenu

Rewriting et multidomaine


Sujets conseillés

Bonjour,

J'ai un serveur VPN chez Magic.

J'ai mis en place des regles de rewriting qui fonctionne tres bien en accedant par le domaine principal au repertoire contenant les fichiers : www.domaine_principal.com/rep1/

Par contre en utilisant le nom de domaine www.domaine2.com qui pointe directement dans le rep1 [suis-je clair ??] .... les regles ne fonctionnent pas du tout....

quelqu'un aurait il une vague idée ?

Je parcours les méandres du forum depuis plusieurs jours sans trouver de solution...

Merci

Modifié par nayasi
Lien vers le commentaire
Partager sur d’autres sites

Posté (modifié)

Ah.... j'ai du mal me faire comprendre...

Alors donc j'ai un Serveur VPN avec un domaine www.domaine_principal.com et un second domaine www.domaine_secondaire.com qui pointe dans le repertoire directory.

Donc lorsque je fait www.domaine_principal.com/directory/... le rewriting fonctionne, et lorsque je fais www.domaine_secondaire.com il ne fonctionne plus...

Voila le htaccess.

DirectoryIndex index.php

Options +FollowSymlinks
RewriteEngine on

+ edit +
J'ai essayé en ajoutant cette ligne aussi.... mais rien !
RewriteBase directory/



RewriteRule   ^([^/]*)/$ index.php?p=index&r1=$1  [L]
RewriteRule   ^([^/]*)\.html$  index.php?p=$1  [L]
RewriteRule   ^([^/]+)/([^/]+)/$  index.php?p=index&r1=$1&r2=$2  [L]
RewriteRule   ^([^/]+)/([^/]+)\.html$  index.php?p=$2&r1=$1  [L]
RewriteRule   ^([^/]*)/([^/]*)/([^/]*)/$ index.php?p=index&r1=$1&r2=$2&r3=$3  [L]
RewriteRule   ^([^/]*)/([^/]*)/([^/]*)\.html$  index.php?p=$3&r1=$1&r2=$2  [L]
RewriteRule   ^([^/]*)/([^/]*)/([^/]*)/([^/]*)\.html$  index.php?p=$4&r1=$1&r2=$2&r3=$3  [L]

...

Si une bonne ame pouvait m'aider ...

Merci !

Modifié par nayasi
Lien vers le commentaire
Partager sur d’autres sites

Salut Nayasi,

Je pense que pour le domaine secondaire, le $_SERVER['DOCUMENT_ROOT'] ne doit pas être positionné comme il faut.

Peux-tu faire un essai et nous donner cette info ?

Dan

Lien vers le commentaire
Partager sur d’autres sites

Posté (modifié)

Bonjour Dan,

Je pense que pour le domaine secondaire, le $_SERVER['DOCUMENT_ROOT'] ne doit pas être positionné comme il faut.

Alors je le fait afficher et il contient /www/htdocs/directory ce qui me semble normal.

non ?

J'ai également essayé en positionnant le .htaccess à la racine du site principal ou dans le repertoire (avec les modifs necessaires).... le resultat est le meme... seuls les urls du domaine principal sont rewritées....

Modifié par nayasi
Lien vers le commentaire
Partager sur d’autres sites

Oui, c'est normal... Au passage, je trouve bizarre que tu n'aies pas de répertoire propre au nom de domaine...

Le $_SERVER['DOCUMENT_ROOT'] du site principal se trouve bien à /www/htdocs ?

Si le .htaccess se trouve à la racine du site principal, il ne sera pas vu pour le domaine secondaire, vu que la racine "web" du second domaine se trouve à /www/htdocs/directory

Essaies en enlevant le ^ au début de tes règles...

Je vois aussi que tu utilises ^([^/]*)/ ... dans ce cas, le $1 peut être égal à NULL... pas cool parce que c'est une règle dont le nombre d'éléments n'est pas strictement défini.

Tu devrais te baser sur l'article du Hub sur la réécriture récursive, je pense qu'il s'adapte bien à ton problème ;)

Dan

Lien vers le commentaire
Partager sur d’autres sites

Posté (modifié)
Oui, c'est normal...

Ah bon merci....

Au passage, je trouve bizarre que tu n'aies pas de répertoire propre au nom de domaine...

Le $_SERVER['DOCUMENT_ROOT'] du site principal se trouve bien à /www/htdocs ?

Bah en fait non.... je trouvai cela curieux aussi, donc j'ai regardé et j'ai /var/www/html....

Ce dont je déduit que mon serveur n'est pas paramétré tout a fait correctement.... mais est-ce un vrai probleme ?

Les fichiers qui s'affichent par mon domaine principal sont bien ceux qui se trouvent à la racine de /www/htdocs.

Si le .htaccess se trouve à la racine du site principal, il ne sera pas vu pour le domaine secondaire, vu que la racine "web" du second domaine se trouve à /www/htdocs/directory

Oui j'entends bien.... mais j'ai tout essayé :)

Essaies en enlevant le ^ au début de tes règles...

Je fais cela dès que j'ai une minute et en plus je lis la contrib du Hub. C'est vrai que mes regles se sont ajoutées les unes aux autres au fur et à mesure et je n'ai jamais pensé à simplifier.... merci Dan !

+ edit +

mes fôtes.... quoi y'en a encore ? désolé !

Modifié par nayasi
Lien vers le commentaire
Partager sur d’autres sites

As-tu bien défini des <VirtualHost> sous Apache ?

Parce que c'est là que tu définis le DocumentRoot de chaque domaine.

Mais je confirme que l'article sur la réécriture récursive est ce qu'il te faut... au moins il donne une solution qui marche depuis longtemps :)

Lien vers le commentaire
Partager sur d’autres sites

Veuillez vous connecter pour commenter

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



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