IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Apache Discussion :

Virtual host DNS : mauvaise redirection


Sujet :

Apache

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Décembre 2006
    Messages
    1 080
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux

    Informations forums :
    Inscription : Décembre 2006
    Messages : 1 080
    Par défaut Virtual host DNS : mauvaise redirection
    Bonjour,

    J'ai un soucie avec les virtuals host.

    J'ai 3 sites web hébergé sur un même serveur (Windows, apache2).

    Lorsque je fais une requête http avec le nom DNS d'un des sites web, j'y arrive bien. Cependant, lorsque je fais une requête avec le nom DNS du serveur, j'arrive sur le 1er site web déclaré dans mes virtuals host.

    Voici ma configuration :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    Listen 192.168.5.2:80
     
    ServerName SRV1.DOM1.INT
    DocumentRoot D:\WAMP\Apache24\htdocs
     
    NameVirtualHost 192.168.5.2:80
     
    <VirtualHost 192.168.5.2:80>
    	ServerName dom.com
    	DocumentRoot D:\WAMP\Apache24\htdocs\dom
    </VirtualHost>
     
    <VirtualHost 192.168.5.2:80>
    	ServerName site1.DOM1.INT
    	ServerAlias site1
    	DocumentRoot D:\WAMP\Apache24\htdocs\site1
    </VirtualHost>
     
    <VirtualHost 192.168.5.2:80>
    	ServerName site2.DOM1.INT
    	ServerAlias site2
    	DocumentRoot D:\WAMP\Apache24\htdocs\site2
    </VirtualHost>
    Auriez vous une idée pour résoudre ce comportement ?

    Merci d'avance.

  2. #2
    Rédacteur
    Avatar de _Mac_
    Profil pro
    Inscrit en
    Août 2005
    Messages
    9 601
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 9 601
    Par défaut
    Tu t'attends plutôt à ce qu'Apache aille dans D:\WAMP\Apache24\htdocs, c'est ça ? Si le nom DNS du serveur ne correspond à aucun ServerName de tes VH, c'est effectivement ce qu'Apache devrait faire. Si ce n'est pas le cas, as-tu essayé de faire un VH avec ce nom DNS ?

  3. #3
    Membre éprouvé
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Décembre 2006
    Messages
    1 080
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux

    Informations forums :
    Inscription : Décembre 2006
    Messages : 1 080
    Par défaut
    Oui, lorsque je vais sur le serveur Apache avec un nom DNS sont gérés par les virtuals host, je ne vais pas dans D:\WAMP\Apaxhe24\Htdocs

    J'ai donc fait ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    Listen 192.168.5.2:80 ' J'écoute sur cette adresse IP et le port 80
     
    <VirtualHost *:80> 'Si j'accède au serveur via son adresse IP public et privé, je refuse la connexion
    	ServerName 48.217.45.31
    	ServerAlias 192.168.5.2
    	<Directory />
    		Deny from all
    	</Directory>
    </VirtualHost>
     
    <VirtualHost *:80> 'Je vais sur le "site1", si l'entête HTTP correspond au serverName (C'est le nom DNS du serveur Apache)
    	ServerName srv1.DOM1.INT
    	ServerAlias svr1
    	DocumentRoot D:\WAMP\Apache24\htdocs
    </VirtualHost>
     
    <VirtualHost *:80> 'Je vais sur le "site1" public, si l'entête HTTP correspond au serverName
    	ServerName site1.com
    	ServerAlias www.site1.com
    	DocumentRoot D:\WAMP\Apache24\htdocs\sonolightdj
    </VirtualHost>
     
    <VirtualHost *:80> 'Je vais sur le "site2", si l'entête HTTP correspond au serverName
    	ServerName site2.DOM1.INT
    	ServerAlias site2
    	DocumentRoot D:\WAMP\Apache24\htdocs\phpMyAdmin
    </VirtualHost>
     
    <VirtualHost *:80> 'Je vais sur le "site3", si l'entête HTTP correspond au serverName
    	ServerName site3.DOM1.INT
    	ServerAlias site3
    	DocumentRoot D:\WAMP\Apache24\htdocs\domo
    </VirtualHost>
    Ma 1er règle qui refuse l'accès au serveur via les adresses IP doit être en 1er car si je vais sur le serveur avec un ServerName non déclaré dans la configuration Apache, il me redirige vers la 1er règle écrite. Donc par sécurité j'ai mis celle qui refuse en 1er. Mais ce comportement me semble bizarre !

  4. #4
    Rédacteur
    Avatar de _Mac_
    Profil pro
    Inscrit en
    Août 2005
    Messages
    9 601
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 9 601
    Par défaut
    Je ne comprends pas : qu'est-ce que tu veux si on accède à ton site avec un nom qui est ni srv1.DOM1.INT, ni svr1, ni site1.com, ni www.site1.com ?

  5. #5
    Membre éprouvé
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Décembre 2006
    Messages
    1 080
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux

    Informations forums :
    Inscription : Décembre 2006
    Messages : 1 080
    Par défaut
    Au début j'avais cela en virtual host :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    Listen 192.168.5.2:80
     
    ServerName SRV1.DOM1.INT
    DocumentRoot D:\WAMP\Apache24\htdocs
     
    NameVirtualHost 192.168.5.2:80
     
    <VirtualHost 192.168.5.2:80>
    	ServerName dom.com
    	DocumentRoot D:\WAMP\Apache24\htdocs\dom
    </VirtualHost>
     
    <VirtualHost 192.168.5.2:80>
    	ServerName site1.DOM1.INT
    	ServerAlias site1
    	DocumentRoot D:\WAMP\Apache24\htdocs\site1
    </VirtualHost>
     
    <VirtualHost 192.168.5.2:80>
    	ServerName site2.DOM1.INT
    	ServerAlias site2
    	DocumentRoot D:\WAMP\Apache24\htdocs\site2
    </VirtualHost>
    Le FQDN de mon serveur est SRV1.DOM1.INT. Lorsque je fessais un http de SRV1.DOM1.INT, je n'arrivais pas sur D:\WAMP\Apache24\htdocs. J'arrivais sur site1.DOM1.INT soit D:\WAMP\Apache24\htdocs\site1 si ce site était le 1er virtual host déclaré ou sur site2.DOM1.INT si s'était celui-ci était déclaré en 1er.

    Pour contrer ce problème (qui d'après ce que j'ai lu n'était pas normal), j'ai fais ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    Listen 192.168.5.2:80 ' J'écoute sur cette adresse IP et le port 80
     
    <VirtualHost *:80> 'Si j'accède au serveur via son adresse IP public et privé, je refuse la connexion
    	ServerName 48.217.45.31
    	ServerAlias 192.168.5.2
    	<Directory />
    		Deny from all
    	</Directory>
    </VirtualHost>
     
    <VirtualHost *:80> 'Je vais sur le "site1", si l'entête HTTP correspond au serverName (C'est le nom DNS du serveur Apache)
    	ServerName srv1.DOM1.INT
    	ServerAlias svr1
    	DocumentRoot D:\WAMP\Apache24\htdocs
    </VirtualHost>
     
    <VirtualHost *:80> 'Je vais sur le "site1" public, si l'entête HTTP correspond au serverName
    	ServerName site1.com
    	ServerAlias www.site1.com
    	DocumentRoot D:\WAMP\Apache24\htdocs\sonolightdj
    </VirtualHost>
     
    <VirtualHost *:80> 'Je vais sur le "site2", si l'entête HTTP correspond au serverName
    	ServerName site2.DOM1.INT
    	ServerAlias site2
    	DocumentRoot D:\WAMP\Apache24\htdocs\phpMyAdmin
    </VirtualHost>
     
    <VirtualHost *:80> 'Je vais sur le "site3", si l'entête HTTP correspond au serverName
    	ServerName site3.DOM1.INT
    	ServerAlias site3
    	DocumentRoot D:\WAMP\Apache24\htdocs\domo
    </VirtualHost>
    Je déclare un 1er virtual host un refus d'accès, notamment sur les IP public et privé. Si par mégarde, je créer un enregistrent DNS vers mon serveur apache (un alias DNS), et que celui-ci n'est pas déclaré dans la configuration d'Apache, celui-ci sera refusé, car le 1er VH est le refus d'accès (normalement, cette règle ne devrait pas être joué et je devrai arrivé à la racine (htdocs), mais Apache joue le 1er VH qu'il trouve dans sa liste...)

    J'ai aussi déclaré un VH avec le FQDN du serveur par sécurité : vu que le fonctionnement normal ne fonctionne pas... Puis des VH pour les autres sites hébergés.

    Au final, cela fonctionne, mais je suis juste étonné du fonctionnement par rapport à ce que j'ai lu sur les différentes documentations des VH.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Redirection sur un virtual host par défaut
    Par dede92 dans le forum Apache
    Réponses: 16
    Dernier message: 26/02/2010, 15h58
  2. Redirection avec les virtual hosts
    Par alex_17 dans le forum Apache
    Réponses: 1
    Dernier message: 22/09/2009, 23h56
  3. DNS et virtual host
    Par schwarzy2 dans le forum Apache
    Réponses: 9
    Dernier message: 27/03/2009, 10h18
  4. [DNS] connaître des virtual hosts depuis un réseau extérieur
    Par khayyam90 dans le forum Développement
    Réponses: 3
    Dernier message: 12/05/2006, 10h35

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo