|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Nouveau Membre du Club
![]() Inscription : juillet 2002 Messages : 72 ![]() |
J'ai un serveur web comprenant IIS et Apache avec quelques sites sous IIS. Je dois ajouter un site sous Apache mais je ne vois pas trop comment m'y prendre.
A priori je dois rajouter une entrée pour ce nouveau site dans le DNS et ajouter un virtualhost dans le fichier de config Apache ? Est ce que cela suffit ? Sinon deuxième question : pour accéder à mon site sous Apache je vais être obligé de spécifier le port dans l'URL ? Il y a-t-il possibilité de masquer ce port ? |
|
|
00
|
|
|
#2 | ||||
![]() ![]() Inscription : août 2005 Messages : 8 306 ![]() |
Citation:
Citation:
Exemple 1 : pare-feu en écoute sur le port 90, Apache en écoute sur le port 4567. Alors : - Les URL sont en http://monsite:90/... - le pare-feu doit rediriger le port entrant 90 sur le port 4567 d'Apache - Apache doit avoir la directive Port 90 dans le virtual host de "monsite". Exemple 2 : pare-feu en écoute sur le port 80, Apache en écoute sur le port 4567. Alors : - Les URL sont en http://monsite/... - le pare-feu doit rediriger le port entrant 80 sur le port 4567 d'Apache - Apache doit avoir la directive Port 80 dans le virtual host de "monsite". Par ailleurs, les virtual hosts te permettent d'avoir plusieurs sites utilisant le port 80. Ce n'est pas parce qu'un site utilise déjà le port 80 qu'il faut que tu utilises un autre port pour les autres virtual hosts. Le truc c'est de mettre la bonne valeur à la directive ServerName des virtual host. Exemple de configuration : Code :
__________________
![]() Du détail, du détail, du détail !!! Revenons à la source : lisons la documentation et les fichiers de trace, la réponse à notre problème s'y trouve sans doute
|
||||
|
|
00
|
|
|
#3 |
|
Nouveau Membre du Club
![]() Inscription : juillet 2002 Messages : 72 ![]() |
Bonjour et merci de ta réponse très complète.
J'arrive bien à accéder à mon site tournant sous Apache en specifiant dans l'URL le port 8080 (également spécifié dans le httpd.conf) J'essaye maintenant de masquer le port dans l'URL en configurant mon parefeu mais cela ne marche pas car Apache ne veut pas se lancer si je le fais écouter sur le port 80 (sans doute du au conflit avec IIS) D'ailleurs mais je ne comprends pas trop ton exemple n°2. Si Apache écoute sur le port 4567 pourquoi la directive Listen à indiquer dans le Httpd.conf est Listen 80 ? |
|
|
00
|
|
|
#4 | |||
![]() ![]() Inscription : août 2005 Messages : 8 306 ![]() |
L'exemple de config que je donne tout à la fin, ce n'est pas l'exemple 2, attention. Pour l'exemple 2, tu as vu juste, il faut en effet une directive Listen 4567. Ce que je donne à la fin c'est un exemple de configuration de 2 virtual hosts utilisant le port 80. Il faut dériver cet extrait de code pour avoir 2 virtual hosts prévu pour le port 80 et Apache écoutant sur le port 4567 :
Code :
Tu dis : Citation:
Donc pour toi, 2 options : - Soit tu peut mettre en place un firewall, un reverse proxy, un répartiteur de charge, etc. qui écoute sur le port 80 et qui peut rediriger vers Apache sur n'import quel port - Soit tu ne peux pas et dans ce cas Apache écoute forcément sur le port 80 et est accédé directement. Dans les 2 cas tu auras une config semblable à celle que je donne au dessus. Les seules choses qui changeront sont les directives Listen et NameVirtualHost ainsi que les *:port des <VirtualHost>. Tu ne peux pas avoir IIS et Apache écoutant sur le même port (un port = un programme). C'est pour ça que tu dois avoir un "appareil" redirigeant le port 80 vers le port d'Apache et que les directives Port sont à la valeur 80.
__________________
![]() Du détail, du détail, du détail !!! Revenons à la source : lisons la documentation et les fichiers de trace, la réponse à notre problème s'y trouve sans doute
|
|||
|
|
00
|
|
|
#5 | ||
|
Nouveau Membre du Club
![]() Inscription : juillet 2002 Messages : 72 ![]() |
OK donc j'ai configuré mon parefeu de manière à ce qu'il écoute sur le port 80 et qu'il redirige sur le port 8080 d'Apache et j'ai configuré Apache de la manière suivante :
Code :
|
||
|
|
00
|
|
|
#6 |
![]() ![]() Inscription : août 2005 Messages : 8 306 ![]() |
NameVirtualHost 192.168.200.xxx:8080 : pourquoi pas *:8080 ? C'est plus simple et le jour ou tu changes d'IP, y a pas de pb. C'est surtout le Listen qui est important pour l'IP, si ta machine a plusieurs interfaces réseau.
Pour le démarrage d'Apache, comme d'hab, faut aller voir dans les logs ce qui ne va pas (généralement, il est assez explicite). T'as pas déjà un truc qui écoute sur le port 8080 ? Fais un telnet localhost 8080 ou telnet <ip> 8080 pour voir si ça accroche.
__________________
![]() Du détail, du détail, du détail !!! Revenons à la source : lisons la documentation et les fichiers de trace, la réponse à notre problème s'y trouve sans doute
|
|
|
00
|
|
|
#7 |
|
Nouveau Membre du Club
![]() Inscription : juillet 2002 Messages : 72 ![]() |
Le problème semble venir de la directive Port 80 dans le virtualhost si je l'enlève Apache démarre bien sinon il ne demarre pas et il n'y a rien dans les fichiers de logs comme trace d'erreur
|
|
|
00
|
|
|
#8 |
![]() ![]() Inscription : août 2005 Messages : 8 306 ![]() |
J'ai l'impression que c'est parce qu'il manque une directive Listen. Port ne sert pas à donner le port d'écoute, c'est Listen qui fait ça. Il y a cependant une exception à cette règle : c'est justement quand il n'y a pas de directive Listen. Donc vérifie bien qu'il y a un Listen 8080 qq part dans le fichier en dehors des virtual hosts. Voir http://httpd.apache.org/docs/1.3/mod/core.html#port.
__________________
![]() Du détail, du détail, du détail !!! Revenons à la source : lisons la documentation et les fichiers de trace, la réponse à notre problème s'y trouve sans doute
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com