Apache2 avec 3 sites virtualisés

Résolu
Bonjour à toutes et à tous,

Je sollicite vos lumières car là, je coince.

J'ai installé Debian Etch et Apache2.

Le site par défaut est sous /var/www
Le site1 se trouve sous /home/wwwcommun/site1
Le site2 se trouve sous /home/wwwcommun/site2

J'ai créé les fichiers site1 et site2 sous /etc/apache2/site-available, lié tout cela ensuite dans /site-enabled/

Sur le DNS, j'ai créé deux CNAME avec un nom correspondant au sous domaine site1, un second lié au site2

Lorsque je tape l'adresse du site1 -> ça fonctionne
Lorsque je tape l'adresse du site2 -> ça fonctionne

Mais lorsque je tape l'adresse du site par défaut, je tombe sur le page du site 2

Un test par phpinfo() m'indique en effet le chemin dans Document_Root /home/wwwcommun/site2 alors qu'il devrait être /var/www.

Je n'ai par ailleurs aucun message d'erreur côté serveur.

Quelqu'un a t-il déjà rencontré le problème ?.

Je ne sais plus ou chercher.

En vous remerciant par avance.

Cdlt.

13 réponses

  1. Modérateur
    Salut,

    affiche le contenu de httpd.conf (sans commentaires)
    perl -ne 'next if /^(\s*#|$)/;print' /chemin/vers/httpd.conf
    1. Bonjour lami20j,

      Merci pour ta réponse.

      Ote moi un doute de l'esprit. J'ai cru comprendre à travers toutes les docs que j'ai pu lire, que httpd.conf n'était plus usité, au bénéfice de apache2.conf.

      Ai-je bien lu ?.

      Sinon, l'édition de httpd.conf ne donne rien, ce qui est normal vu l'interprêtation que j'ai faite des tutaux.

      J'attends ton avis éclairé pour voir si je me suis fourvoyé totalement :-(.

      A bientôt.

      Cordialement.
      1. Contributeur
        Bonjour,

        Ca dépend des distributions.

        Soit c'est httpd.conf soit apache2.conf.

        Ils sont équivalents.
        1. Bonjour foobar47,

          Merci à toi. Ouf, voilà déjà quelque chose que j'avais bien compris alors.

          Du fait, j'utilise Debian Etch, donc à moins d'un avis contraire, c'est bien apache2.conf que j'ai sollicité.

          Et l'on en revient à l'origine de mon message, pourquoi mon site par défaut pointe sur le site2 virtuel plutôt que sur /var/www ?.

          Ca ne doit pas être grand chose, mais j'avoue que je sèche...

          Bonne journée.
      2. Contributeur
        Et on en revient à la première question :

        Peux-tu donner ton fichier apache2.conf svp ! :)
        1. Modérateur
          Salut,

          affiche le contenu de ton fichier apache2.conf pour voir.

          J'ai cru comprendre à travers toutes les docs que j'ai pu lire, que httpd.conf n'était plus usité, au bénéfice de apache2.conf.

          Ce sont les distributions qui changent le nom de ce fichier.
          Dans les sources on trouve toujours httpd.conf :-))
          1. Merci pour toutes ces précisions.

            Le fichier apache2.conf est un peu long pour être affiché ici.

            En fichier associé, je n'ai pas encore trouvé comment faire.

            Je reviens vers vous dès que je trouve la solution, s'il y a ?!.

            A bientôt.
            1. Contributeur
              perl -ne 'next if /^(\s*#|$)/;print' /etc/apache2/conf/apache2.conf


              Ca va déjà l'alleger... ;-)
              1. Suis-je bête, tu l'avais déjà évoqué cette instruction, pardon !

                Voilà:

                ServerRoot "/etc/apache2"
                LockFile /var/lock/apache2/accept.lock
                PidFile /var/run/apache2.pid
                Timeout 300
                KeepAlive On
                MaxKeepAliveRequests 100
                KeepAliveTimeout 15
                <IfModule mpm_prefork_module>
                StartServers 5
                MinSpareServers 5
                MaxSpareServers 10
                MaxClients 150
                MaxRequestsPerChild 0
                </IfModule>
                <IfModule mpm_worker_module>
                StartServers 2
                MaxClients 150
                MinSpareThreads 25
                MaxSpareThreads 75
                ThreadsPerChild 25
                MaxRequestsPerChild 0
                </IfModule>
                User www-data
                Group www-data
                AccessFileName .htaccess
                <Files ~ "^\.ht">
                Order allow,deny
                Deny from all
                </Files>
                TypesConfig /etc/mime.types
                DefaultType text/plain
                HostnameLookups Off
                ErrorLog /var/log/apache2/error.log
                LogLevel warn
                Include /etc/apache2/mods-enabled/*.load
                Include /etc/apache2/mods-enabled/*.conf
                Include /etc/apache2/httpd.conf
                Include /etc/apache2/ports.conf
                Include /etc/apache2/conf.d/
                LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
                LogFormat "%h %l %u %t \"%r\" %>s %b" common
                LogFormat "%{Referer}i -> %U" referer
                LogFormat "%{User-agent}i" agent
                ServerTokens Full
                ServerSignature On
                <IfModule alias_module>
                Alias /icons/ "/usr/share/apache2/icons/"
                <Directory "/usr/share/apache2/icons">
                Options Indexes MultiViews
                AllowOverride None
                Order allow,deny
                Allow from all
                </Directory>
                </IfModule>
                <IfModule mod_autoindex.c>
                IndexOptions FancyIndexing VersionSort HTMLTable NameWidth=*
                AddIconByEncoding (CMP,/icons/compressed.gif) x-compress x-gzip
                AddIconByType (TXT,/icons/text.gif) text/*
                AddIconByType (IMG,/icons/image2.gif) image/*
                AddIconByType (SND,/icons/sound2.gif) audio/*
                AddIconByType (VID,/icons/movie.gif) video/*
                AddIcon /icons/binary.gif .bin .exe
                AddIcon /icons/binhex.gif .hqx
                AddIcon /icons/tar.gif .tar
                AddIcon /icons/world2.gif .wrl .wrl.gz .vrml .vrm .iv
                AddIcon /icons/compressed.gif .Z .z .tgz .gz .zip
                AddIcon /icons/a.gif .ps .ai .eps
                AddIcon /icons/layout.gif .html .shtml .htm .pdf
                AddIcon /icons/text.gif .txt
                AddIcon /icons/c.gif .c
                AddIcon /icons/p.gif .pl .py
                AddIcon /icons/f.gif .for
                AddIcon /icons/dvi.gif .dvi
                AddIcon /icons/uuencoded.gif .uu
                AddIcon /icons/script.gif .conf .sh .shar .csh .ksh .tcl
                AddIcon /icons/tex.gif .tex
                AddIcon /icons/bomb.gif core
                AddIcon /icons/back.gif ..
                AddIcon /icons/hand.right.gif README
                AddIcon /icons/folder.gif ^^DIRECTORY^^
                AddIcon /icons/blank.gif ^^BLANKICON^^
                DefaultIcon /icons/unknown.gif
                ReadmeName README.html
                HeaderName HEADER.html
                IndexIgnore .??* *~ *# RCS CVS *,v *,t
                </IfModule>
                <IfModule mod_mime.c>
                AddType application/x-compress .Z
                AddType application/x-gzip .gz .tgz
                AddLanguage ca .ca
                AddLanguage cs .cz .cs
                AddLanguage da .dk
                AddLanguage de .de
                AddLanguage el .el
                AddLanguage en .en
                AddLanguage eo .eo
                AddLanguage es .es
                AddLanguage et .et
                AddLanguage fr .fr
                AddLanguage he .he
                AddLanguage hr .hr
                AddLanguage it .it
                AddLanguage ja .ja
                AddLanguage ko .ko
                AddLanguage ltz .ltz
                AddLanguage nl .nl
                AddLanguage nn .nn
                AddLanguage no .no
                AddLanguage pl .po
                AddLanguage pt .pt
                AddLanguage pt-BR .pt-br
                AddLanguage ru .ru
                AddLanguage sv .sv
                AddLanguage zh-CN .zh-cn
                AddLanguage zh-TW .zh-tw
                </IfModule>
                <IfModule mod_negotiation.c>
                LanguagePriority en ca cs da de el eo es et fr he hr it ja ko ltz nl nn no pl pt pt-BR ru sv zh-CN zh-TW
                ForceLanguagePriority Prefer Fallback
                </IfModule>
                <IfModule mod_mime.c>
                AddCharset us-ascii .ascii .us-ascii
                AddCharset ISO-8859-1 .iso8859-1 .latin1
                AddCharset ISO-8859-2 .iso8859-2 .latin2 .cen
                AddCharset ISO-8859-3 .iso8859-3 .latin3
                AddCharset ISO-8859-4 .iso8859-4 .latin4
                AddCharset ISO-8859-5 .iso8859-5 .cyr .iso-ru
                AddCharset ISO-8859-6 .iso8859-6 .arb .arabic
                AddCharset ISO-8859-7 .iso8859-7 .grk .greek
                AddCharset ISO-8859-8 .iso8859-8 .heb .hebrew
                AddCharset ISO-8859-9 .iso8859-9 .latin5 .trk
                AddCharset ISO-8859-10 .iso8859-10 .latin6
                AddCharset ISO-8859-13 .iso8859-13
                AddCharset ISO-8859-14 .iso8859-14 .latin8
                AddCharset ISO-8859-15 .iso8859-15 .latin9
                AddCharset ISO-8859-16 .iso8859-16 .latin10
                AddCharset ISO-2022-JP .iso2022-jp .jis
                AddCharset ISO-2022-KR .iso2022-kr .kis
                AddCharset ISO-2022-CN .iso2022-cn .cis
                AddCharset Big5 .Big5 .big5 .b5
                AddCharset cn-Big5 .cn-big5
                AddCharset WINDOWS-1251 .cp-1251 .win-1251
                AddCharset CP866 .cp866
                AddCharset KOI8 .koi8
                AddCharset KOI8-E .koi8-e
                AddCharset KOI8-r .koi8-r .koi8-ru
                AddCharset KOI8-U .koi8-u
                AddCharset KOI8-ru .koi8-uk .ua
                AddCharset ISO-10646-UCS-2 .ucs2
                AddCharset ISO-10646-UCS-4 .ucs4
                AddCharset UTF-7 .utf7
                AddCharset UTF-8 .utf8
                AddCharset UTF-16 .utf16
                AddCharset UTF-16BE .utf16be
                AddCharset UTF-16LE .utf16le
                AddCharset UTF-32 .utf32
                AddCharset UTF-32BE .utf32be
                AddCharset UTF-32LE .utf32le
                AddCharset euc-cn .euc-cn
                AddCharset euc-gb .euc-gb
                AddCharset euc-jp .euc-jp
                AddCharset euc-kr .euc-kr
                AddCharset EUC-TW .euc-tw
                AddCharset gb2312 .gb2312 .gb
                AddCharset iso-10646-ucs-2 .ucs-2 .iso-10646-ucs-2
                AddCharset iso-10646-ucs-4 .ucs-4 .iso-10646-ucs-4
                AddCharset shift_jis .shift_jis .sjis
                AddHandler type-map var
                AddType text/html .shtml
                AddOutputFilter INCLUDES .shtml
                </IfModule>
                <IfModule mod_setenvif.c>
                BrowserMatch "Mozilla/2" nokeepalive
                BrowserMatch "MSIE 4\.0b2;" nokeepalive downgrade-1.0 force-response-1.0
                BrowserMatch "RealPlayer 4\.0" force-response-1.0
                BrowserMatch "Java/1\.0" force-response-1.0
                BrowserMatch "JDK/1\.0" force-response-1.0
                BrowserMatch "Microsoft Data Access Internet Publishing Provider" redirect-carefully
                BrowserMatch "MS FrontPage" redirect-carefully
                BrowserMatch "^WebDrive" redirect-carefully
                BrowserMatch "^WebDAVFS/1.[012]" redirect-carefully
                BrowserMatch "^gnome-vfs/1.0" redirect-carefully
                BrowserMatch "^XML Spy" redirect-carefully
                BrowserMatch "^Dreamweaver-WebDAV-SCM1" redirect-carefully
                </IfModule>
                Include /etc/apache2/sites-enabled/
                NameVirtualHost xxx.xxx.xxx.xxx

                -----------------------------------------------------------

                Il a bien un :
                Include /etc/apache2/httpd.conf à un moment donné. Serait-ce alors une piste ?.

                Merci encore à vous deux pour votre patience et compétences évidemment.

                @+
                1. Contributeur
                  Ce n'était pas moi mais c'est pas grave ;-)
              2. Modérateur
                Salut,

                je te donne une exemple, à toi de voir
                il faut que tu regardes dans les fichiers que tu appelles avec la directive include surtout dans /etc/apache2/httpd.conf

                Donc j'ai créé 3 site virtuelles par nom
                site1.lam
                site2.lam
                site3.lam

                Voici la partie de mon httpd.conf où j'ai configurer les sites virtuelles
                NameVirtualHost 192.168.1.1
                <VirtualHost site1.lam>
                        ServerName site1.lam
                        DocumentRoot "/home/lami20j/sitest/site1.lam"
                        <Directory "/home/lami20j/sitest/site1.lam">
                                Order allow,deny
                                Allow from 192.168.1.1
                        </Directory>
                </VirtualHost>
                <VirtualHost site2.lam>
                        ServerName site2.lam
                        DocumentRoot "/home/lami20j/sitest/site2.lam"
                        <Directory "/home/lami20j/sitest/site2.lam">
                                Order allow,deny
                                Allow from 192.168.1.1
                        </Directory>
                </VirtualHost>
                <VirtualHost site3.lam>
                        ServerName site3.lam
                        DocumentRoot "/home/lami20j/sitest/site3.lam"
                        <Directory "/home/lami20j/sitest/site3.lam">
                                Order allow,deny
                                Allow from 192.168.1.1
                        </Directory>
                </VirtualHost>
                

                Voici mon /etc/hosts concernant la sites en discussion
                lami20j@debian:~$ grep 192.168.1.1 /etc/hosts
                192.168.1.1     site1.lam
                192.168.1.1     site2.lam
                192.168.1.1     site3.lam
                

                L'arborescensce des sites
                lami20j@debian:~$ ls -R sitest/
                sitest/:
                site1.lam  site2.lam  site3.lam
                
                sitest/site1.lam:
                index.html
                
                sitest/site2.lam:
                index.html
                
                sitest/site3.lam:
                index.html
                
                et les connextion
                site1.lam
                site2.lam
                site3.lam
                1. Bonjour lamy20j & foobar47,

                  Merci à vous pour votre patience.

                  J'ai trouvé ce matin. Comme prévu, il s'agissait d'une bricole.

                  J'avais bien mentionné l'@ IP du serveur (puisqu'il semble quelle soit préférable à l'URL) dans <VirtualHost IP> des sites 1 & 2, mais j'avais laissé l'étoile par défaut dans le <VirtualHost *> du site par défaut.

                  Cela suffisait pour le rediriger systématiquement vers le site2.

                  J'espère que mon erreur pourra servir à d'autres ;-).

                  A bientôt et merci encore.
                  1. Merci danycoc, j'avais le même souci, et ta réponse m'a en effet bien aidée.
                    1. Bonjour,

                      De rien Gil, c'est avec plaisir.

                      Bonne journée.

                      @+