Bonjour à tous,
Je fais appels aux pointures qui fréquentent ce forum car je bloque sur un problème qui commence à me rendre fou et que je n'arrive pas à comprendre ni résoudre.
Je viens d'installer un serveur Apache sur mon serveur Windows 2003 qui va devoir héberger trois sites.
Dans le dossier 1 "C:/www/dev/dossier1/" j'ai la partie commerciale d'un site.
Dans le dossier 2 "C:/www/dev/dossier2/" j'ai la partie extranet qui sera accessible par les trois sites.
Dans le dossier 2 j'ai un .htaccess qui va réécrire tous mes URLs de manière assez simple, exemple :
RewriteRule ^page/$ page.php [L]
Pour tester ca en local dans mon fichier host de Windows je fais le lien entre ma future adresse internet et l'adresse ip de mon serveur :
192.168.1.106 www.monsite.com
Je créé un Virtual Host dans mon httpd-vhosts.conf :
1 2 3 4 5 6 7 8 9
|
NameVirtualHost *:80
<VirtualHost *:80>
ServerName www.monsite.com
ServerAlias monsite.com *.monsite.com
DocumentRoot "C:/www/dev/dossier1/"
Alias /extranet/ "C:/www/dev/dossier2/"
</VirtualHost> |
Si j'accède à http://www.monsite.com, j'ai bien l'index de mon DocumentRoot, jusqu'ici tout va bien.
Si j'accède directement à la page http://www.monsite.com/extranet/page.php sans passer par l'URL Rewriting ca fonctionne bien.
Par contre si j'accède à http://www.monsite.com/extranet/page/ il me renvoi une erreur 404 en me disant :
Not Found. The requested URL /www/dev/dossier2/page.php was not found on this server.
Donc j'ai l'impression qu'il essaye de chercher page.php dans le dossier : c:/www/dev/dossier1/www/dev/dossier2/. Mais pourquoi veut il aller chercher cette page dans le dossier du DocumentRoot alors qu'elle est censée se trouver dans le dossier de l'alias "extranet" ?
J'ai fait un test en remplaçant dans la définition du Virtual Host la ligne :
DocumentRoot "C:/www/dev/dossier1/"
par
DocumentRoot "C:/www/dev/"
et quand je retente d'accéder à http://www.monsite.com/extranet/page/ là tout fonctionne bien !
Donc je ne comprends pas du tout pourquoi l'accès a une page qui a été réécrite est différent quand le dossier vers lequel pointe l'Alias se trouve en dehors du DocumentRoot !
J'espère avoir donné tous les éléments nécessaires à la bonne compréhension de mon problème. En espérant que quelqu'un ait déjà rencontré ce comportement et puisse me donner une solution pour régler ca.
Merci d'avance et bonne soirée !
Sylvain
Partager