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 :

Conflit de virtualhost après ajout de sous-domaine


Sujet :

Apache

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2011
    Messages
    88
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2011
    Messages : 88
    Par défaut Conflit de virtualhost après ajout de sous-domaine
    Bonjour,

    Voilà je suis en train de créer un nouveau virtualhost sur mon serveur Apache et j'aimerais faire cohabiter mes deux sites sur le même domaine (le premier domaine fonctionne bien) et ajouter le second en tant que sous domaine.

    J'ai donc édité mes fichiers de conf Apache en créant un nouveau virtualhost avec le premier qui fonctionnait bien, et en lançant la commande de redémarrage du service apache via init je suis tombé sur les lignes suivantes:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    user@domain:~$ /etc/init.d/apache2 restart
    Restarting web server: apache2[Sun May 20 17:13:45 2012] [warn] NameVirtualHost *:80 has no VirtualHosts
    [Sun May 20 17:13:45 2012] [warn] NameVirtualHost *:80 has no VirtualHosts
    (13)Permission denied: make_sock: could not bind to address [::]:80
    (13)Permission denied: make_sock: could not bind to address 0.0.0.0:80
    no listening sockets available, shutting down
    Unable to open logs
    Action 'start' failed.
    The Apache error log may have more information.
     failed!
    Voici mes fichiers de configuration apache:
    virtualhosts dans sites-available (ce sont juste les noms de domaine qui changent, le reste est identique):
    virtualhost1 et virtualhost2 (fichiers site1 et site2):
    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
    <VirtualHost *:80>
            ServerAdmin Leaffy@yopmail.com
            ServerName www.sub.domain.com
     
            DocumentRoot /var/www/www.sub.domain.com
     
            <Directory /var/www/www.sub.domain.com>
                    Options -Indexes
                    Order allow,deny
                    allow from all
            </Directory>
     
            ServerSignature Off
            LogLevel warn
            ErrorLog /var/log/apache2/www.sub.domain.com/error.log
            CustomLog /var/log/apache2/www.sub.domain.com/access.log combined
    </VirtualHost>
    conf.d/virtual.conf:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Listen 80
    NameVirtualHost *:80
    /etc/hosts:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    127.0.0.1       hostname        localhost
    178.170.xxx.xxx  domain.ikoula.com     hostname
    127.0.0.1       site1
    127.0.0.1       site2
    Voilà en espérant que ça pourra vous aider, je rappelle que tout marchait bien avant l'ajout du nouveau site, ça doit être un conflit dans le fichier hosts je pense...

    EDIT:donc pour info j'ai changé 2-3 trucs, j'ai supprimé la deuxième ligne du fichier hosts qui ne sert a rien, j'ai placé des directives 'NameVirtualHost IP_SERVER:80' devant chacun de mes vhost, j'ai viré le 'NameVirtualHost' du fichier ports.conf qui était source principale d'ennuis et cette-fois ci je n'ai plus qu'un warning:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    waiting [Sun May 20 20:04:11 2012] [warn] NameVirtualHost IP_SERVER:80 has no VirtualHosts
    Comme si le deuxième n'était pas reconnu, en enlevant le deuxième vhost du coup ca marche...Une idée?

  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
    Citation Envoyé par Leaffy Voir le message
    j'ai placé des directives 'NameVirtualHost IP_SERVER:80' devant chacun de mes vhost, j'ai viré le 'NameVirtualHost' du fichier ports.conf qui était source principale d'ennuis
    Justement, on fait toujours l'inverse de ce que tu as fait : on met tous les NameVirtualHost dans ports.conf, comme ça on le voit tous d'un coup.

    Ton problème vient du fait que tu déclares un NameVirtualHost qui ne trouve aucune balise ouvrante <VirtualHost> correspondante. Il faut toujours que les 2 coïncident. Dans ton cas, par défaut, tu as NameVirtualHost *:80 dans ports.conf. Cela signifie qu'Apache s'attend à ce que tous tes <VirtualHost> soient <VirtualHost *:80>.

    Donc remets 1 seul NameVirtualHost *:80 dans ports.conf et mets dans tes 2 VH la signature <VirtualHost *:80>.

  3. #3
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2011
    Messages
    88
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2011
    Messages : 88
    Par défaut
    Bonjour,

    Merci pour ta réponse, c'est exactement ce que j'ai fait et ça a marché! Le problème c'est qu'au départ je pensais que les directives ne marchaient pas mais le véritable problème c'était que je rééditais les fichiers dans /etc/apache2/sites-available sans relancer la configuration via la commande a2ensite (après avoir désactivé les sites) donc il ne me résolvais jamais vraiment le problème...

    J'ai fait comme tu as dit, je pense qu'étant donné que c'était la première fois que je me lançais dans la configuration de plus d'un virtualhost, je n'avais pas encore tout à fait saisi son fonctionnement. Maintenant ça rentre mieux.

    Par contre j'ai vu que sur certains sites ils plaçaient la directive NameVirtualHost * dans http.conf, mais chez moi ça ne semble pas marcher donc je l'ai laissé comme il était par défaut dans ports.conf.

    Selon toi sur une distribution comme Debian il vaut mieux rééditer les fichiers directement dans sites-enabled ou pas?

    NB: le fichier /etc/hosts présenté plus tôt est faux: la dernière ligne ne sert à rien.

  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
    Editer les fichiers dans sites-enabled ou sites-available revient au même, ce sont les mêmes fichiers : dans sites-enabled on trouve des liens symboliques qui pointent vers des fichiers de sites-available.

  5. #5
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2011
    Messages
    88
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2011
    Messages : 88
    Par défaut
    D'accord très bien, merci pour ton aide en tout cas

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

Discussions similaires

  1. Virtualhosts sous domaine
    Par tet2brick dans le forum Apache
    Réponses: 4
    Dernier message: 05/05/2008, 17h05
  2. Réponses: 3
    Dernier message: 22/01/2008, 18h14
  3. Réponses: 2
    Dernier message: 20/07/2007, 11h23
  4. virtualhost pour un sous domaine général
    Par altair8080 dans le forum Apache
    Réponses: 1
    Dernier message: 12/07/2007, 16h50
  5. Sous domaine et virtualhost ?
    Par hxt dans le forum Apache
    Réponses: 2
    Dernier message: 10/01/2007, 18h14

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