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 :

VirtualHosts/Apache Optimisation


Sujet :

Apache

  1. #1
    Membre éprouvé Avatar de speedev
    Profil pro
    Développeur Web
    Inscrit en
    Mai 2006
    Messages
    1 051
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2006
    Messages : 1 051
    Par défaut VirtualHosts/Apache Optimisation
    Bonjour,

    J'interviens ici pour solliciter vos idées concernant la configuration actuelle de mon serveur web apache (2.0.59) sous windows qui fonctionne bien!

    Et comme je trouve que le WEB n'offre pas toujours suffisament de clareté dans l'explication d'un montage de virtualhosts sous Apache, je vais détailler au possible, ça pourrait servir à beaucoup de gens, mais histoire que ça ne fasse pas lourd à lire pour ceux qui maitrisent je leur conseille de ne regarder que le code que j'indique et de le critiquer au possible si je peux apporter des améliorations

    Donc voici ma configuration :

    Configuration Matérielle :
    - 1 PC SERVER (IP = 192.168.0.2) avec apache 2.0.59/MYSQL/PHP5 d'installés, le tout sous windows XP (je sais...linux offre plus de perspectives et je le conseille à tout le monde aussi, mais dans mon cas là c'est windows!)
    - 1 PC CLIENT (IP = 192.168.0.3) sous XP aussi considéré comme le client local.
    - 1 routeur Netgear DG834G (configuré pour un compte dyndns, ce routeur redirige toute requête HTTP entrante sur le port 80 vers le PC SERVER)
    - et donc 1 compte chez dyndns.org avec l'option wildcard activé pour les subdomains (ou Virtualhosts) que j'ai configurés.
    Prenons en exemple ce compte comme étant le mien :
    http://machambre.homedns.org ^^

    Configuration Logicielle :
    - J'ai 7 Virtualhosts pour ma part dans un fichier externe à httpd.conf pour que ça soit plus lisible et accessible
    Ces 7 virtualhosts sont les suivants:

    - http://livres.machambre.homedns.org
    - http://bureau.machambre.homedns.org
    - http://poubelle.machambre.homedns.org

    etc...
    Voici un exemple de config d'un de mes virtualhosts :
    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
     
    NameVirtualHost livres.machambre.homedns.org
    <VirtualHost livres.machambre.homedns.org:80>
        ServerAdmin lepetitgamin@hotmail.fr
        DocumentRoot G:/www/subdmains/livres/
        ServerName livres.machambre.homedns.org
        ErrorLog G:/logs/livres-error_log
        CustomLog G:/logs/livres-access_log common
       <Directory G:/www/subdmains/livres/>
            AllowOverride All
            Options -Indexes +ExecCGI
            Order Deny,Allow
    	deny from all
            Allow from 192.168.0.2 192.168.0.3
        </Directory>
    </VirtualHost>
    Donc pour autant de virtualhosts désirés j'ai répété ce code avec les directives adéquates pour chacun.

    Alors bon je ne connais pas totalement toutes les lignes de config possibles si vous voyez des bourdes, merci de me les signaler, je suis là pour ça avant tout! ^^

    Chaque virtualhost a, comme on le voit, son propre <directory> de spécifié afin d'autoriser ou d'interdire telle ou telle IP.

    Selon mes sites web (ou virtualhosts), j'ai une config différente de ce <directory>.

    Je supprime la ligne "deny from all" qui interdit toutes les IP quelles qu'elles soient afin que depuis Internet je puisse voir le site web concerné, mais dans tous les cas j'autorise deux accès locaux à savoir mes deux PC "Allow from 192.168.0.2 192.168.0.3".

    Enfin, pour pouvoir accéder à mes sites localement et donc SANS AVOIR à passer par Internet (et donc par dyndns.org), j'ai configuré sur mes deux PC leurs fichiers "hosts" (C:\WINDOWS\system32\drivers\etc\hosts.conf) de telle manière :
    192.168.0.2 http://chambre.homedns.org
    192.168.0.2 http://livre.chambre.homedns.org
    192.168.0.2 http://bureau.chambre.homedns.org
    192.168.0.2 http://poubelle.chambre.homedns.org
    etc...

    Ainsi, par exemple, le PC CLIENT (192.168.0.3) accède à tous les sites web du PC SERVER (192.168.0.2) sans franchir le routeur, puisque les requêtes pointent vers l'IP locale 192.168.0.2, le routeur s'occupe de la redirection locale (lui-même étant configuré biensur pour envoyer les requêtes HTTP du port 80 vers l'IP 192.168.0.2).

    En somme, une configuration connue!

    Cela dit, je suis persuadé de pouvoir optimiser cette config avec je ne sais quel système d'administration. Ou sinon, en gros, que tout soit plus facilement administrable que par une config de niveau 1 (httpd.conf)...Cela fait des années que j'utilise Apache de la sorte et j'ai l'impression d'être un cro-magnon de l'apache mais bon Apache c'est toujours Apache...Si vous pouvez me conseiller éventuellement merci beaucoup!

    A +

  2. #2
    Membre éprouvé Avatar de speedev
    Profil pro
    Développeur Web
    Inscrit en
    Mai 2006
    Messages
    1 051
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2006
    Messages : 1 051
    Par défaut
    Reprise de mon code, j'ai relevé une erreur :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    # Il faut n'indiquer qu'une seule fois cette ligne pour tous les sites hébergés sur le PC SERVER
    NameVirtualHost 192.168.0.2:80
    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
     
    <VirtualHost livres.machambre.homedns.org:80>
        ServerAdmin lepetitgamin@hotmail.fr
        DocumentRoot G:/www/subdmains/livres/
        ServerName livres.machambre.homedns.org
        ErrorLog G:/logs/livres-error_log
        CustomLog G:/logs/livres-access_log common
       <Directory G:/www/subdmains/livres/>
            AllowOverride All
            Options -Indexes +ExecCGI
            Order Deny,Allow
    	deny from all
            Allow from 192.168.0.2 192.168.0.3
        </Directory>
    </VirtualHost>
    # on recopie donc cette configuration pour autant de virtualhosts hébergés
    Cela marchait avant mais ainsi c'est plus propre.

  3. #3
    Membre émérite Avatar de Ceylo
    Profil pro
    Étudiant
    Inscrit en
    Janvier 2007
    Messages
    1 216
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 216
    Par défaut
    Très intéressant , merci pour tes explications, vraiment. Je suis sûr que cela servira à beaucoup d'entre nous qui sommes encore un peu perdus avec les virtualhots (dont moi).

    Bonne continuation

Discussions similaires

  1. [WB16]Site dynamique et virtualhost APACHE
    Par zouzouPitchou dans le forum WebDev
    Réponses: 5
    Dernier message: 26/09/2011, 09h19
  2. Configuer un virtualhost 'apache'
    Par Invité(e) dans le forum Apache
    Réponses: 5
    Dernier message: 21/08/2011, 21h42
  3. VirtualHost apache windows
    Par lacrem dans le forum Apache
    Réponses: 2
    Dernier message: 23/09/2008, 09h15
  4. Configuration VirtualHost Apache
    Par nico10gbb dans le forum Apache
    Réponses: 11
    Dernier message: 22/05/2008, 13h38
  5. redirection virtualhost apache
    Par ohector dans le forum Apache
    Réponses: 2
    Dernier message: 02/01/2008, 11h26

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