Forum Linux.débutant Fichier VirtualHost

Posté par . Licence CC by-sa.
Tags : aucun
0
24
oct.
2017

Bonjour gang,

Voici ce que je modifie: /etc/apache2/sites-available et le fichier: 000-default.conf
je tente de faire mon fichier VirtualHost, mais soit les images n'affichent pas ou j'ai ce message d'erreur.
The requested URL /039_ebsf/ was not found on this server.

Ce serveur sera Multi-sites.

Voici mon fichier VirtualHost.

    <VirtualHost 192.168.150.28:80>
    ServerName sites.csvt.qc.ca
    ServerAlias www.sites.csvt.qc.ca/039_ebsf sites.csvt.qc.ca/039_ebsf
    DocumentRoot /var/www/html/039_ebsf
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
    </VirtualHost>

    <VirtualHost 192.168.150.28:443>
    ServerName sites.csvt.qc.ca
    ServerAlias www.sites.csvt.qc.ca/039_ebsf sites.csvt.qc.ca/039_ebsf
    DocumentRoot /var/www/html/039_ebsf
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
    </VirtualHost>

Merci de votre aide

Jack

  • # pas le bon fichier

    Posté par . Évalué à 2.

    1°) il ne faut pas modifier le 000-default.conf
    mais plutot faire un fichier 001-ebsf.conf

    2°) le fichier contiendra ce que tu as mis, sans les alias qui pointe vers des dossiers

        <VirtualHost 192.168.150.28:80>
        ServerName sites.csvt.qc.ca
        ServerAlias www.sites.csvt.qc.ca
        DocumentRoot /var/www/html/039_ebsf
        ErrorLog ${APACHE_LOG_DIR}/error.log
        CustomLog ${APACHE_LOG_DIR}/access.log combined
        </VirtualHost>
    
        <VirtualHost 192.168.150.28:443>
        ServerName sites.csvt.qc.ca
        ServerAlias www.sites.csvt.qc.ca
        DocumentRoot /var/www/html/039_ebsf
        ErrorLog ${APACHE_LOG_DIR}/error.log
        CustomLog ${APACHE_LOG_DIR}/access.log combined
        </VirtualHost>

    3°) il faudra ensuite activer le fichier de config avec la commande
    a2ensite 001-ebsf ou en faisant le lien de ce fichier vers le dossier sites-enabled

    4°) recharger apache

    • [^] # Re: pas le bon fichier

      Posté par . Évalué à 1.

      et surtout, comme le DocumentRoot défini pour ce VirtualHost est /var/www/html/039_ebsf, il y a de grandes chances pour que les différents documents soient accessibles avec l'URL http://sites.csvt.qc.ca/ plutôt que http://sites.csvt.qc.ca/039_ebsf (sauf si le répertoire /var/www/html/039_ebsf/039_ebsf existe, ce qui serait étonnant).
      Le souci vient certainement du fait qu'il y a des liens absolus dans le code (comme http://sites.csvt.qc.ca/039_ebsf/wp-content/plugins/wp-events-manager/inc/libraries//countdown/css/jquery.countdown.css). Il doit il y avoir une erreur dans la configuration de WordPress.

    • [^] # Re: pas le bon fichier

      Posté par . Évalué à 1.

      Oh super !

      Je viens de faire le nouveau fichier de config et je viens de l'activer.

      par contre j'ai mon message d'erreur:

      Not Found

      The requested URL /039_ebsf/ was not found on this server.

      Apache/2.4.10 (Debian) Server at sites.csvt.qc.ca Port 80

      Merci beaucoup de votre aide

      Jack

      • [^] # Re: pas le bon fichier

        Posté par . Évalué à 4.

        avec ton site dans /var//www/html/039_ebsf

        si tu as défini
        DocumentRoot /var/www/html/039_ebsf
        tu accèdes à ton site par http://sites.csvt.qc.ca/

        si tu as défini
        DocumentRoot /var/www/html/
        tu accèdes à ton site par http://sites.csvt.qc.ca/039_ebsf

        • [^] # Re: pas le bon fichier

          Posté par . Évalué à 1.

          Super ! Merci beaucoup de l'info vraiment précise.

          Pour le 039_ebsf, je vais créer une redirection via le nom de domaine.

          Par contre avec ce fichier host-ci, j'ai un sous-domaine mais je n'arrive pas à accéder au site. J'arrive toujours sur la page d'Apache2.

          Voici mon fichier de config.

          <VirtualHost *:80>
          

          ServerName sites.csvt.qc.ca
          ServerAlias www.pointe-du-lac.csvt.qc.ca
          DocumentRoot /var/www/html/049_cfppointedulac/
          ErrorLog ${APACHE_LOG_DIR}/error.log
          CustomLog ${APACHE_LOG_DIR}/access.log combined

          ServerName sites.csvt.qc.ca
          ServerAlias www.pointe-du-lac.csvt.qc.ca
          DocumentRoot /var/www/html/049_cfppointedulac/
          ErrorLog ${APACHE_LOG_DIR}/error.log
          CustomLog ${APACHE_LOG_DIR}/access.log combined

          Merci de votre aide à nouveau.

          Jack

  • # Fichier log erreur

    Posté par . Évalué à 1. Dernière modification le 25/10/17 à 10:19.

    Je regarde dans le fichier error.log et j'ai ceci:

        AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 192.168.150.28. Set the 'ServerName' directive globally to suppress this message
        [Tue Oct 24 15:24:34.913654 2017] [mpm_prefork:notice] [pid 643] AH00163: Apache/2.4.10 (Debian) OpenSSL/1.0.1t configured -- resuming normal operations
        [Tue Oct 24 15:24:34.913684 2017] [core:notice] [pid 643] AH00094: Command line: '/usr/sbin/apache2'
        [Tue Oct 24 15:27:28.103753 2017] [mpm_prefork:notice] [pid 643] AH00171: Graceful restart requested, doing restart

    Merci de votre aide

    Jack

    • [^] # Re: Fichier log erreur

      Posté par . Évalué à 2.

      AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 192.168.150.28. Set the 'ServerName' directive globally to suppress this message

      supprimes les references en IP dans ton fichier de config

      <Virtualhost *:80>
      [...]
      </Virtualhost>
      <Virtualhost *:443>
      [...]
      </Virtualhost>

      car cela ecoutera sur toutes les IPs du serveurs, mais ne repondra que si la personne demande le ServerName que tu auras defini

  • # Redirection VirtualHost

    Posté par . Évalué à 1.

    Merci pour les nombreuses aides !

    Étant donné que je suis débutant, après mes heures de recherches… J'ai vu que je peux faire une redirection dans le fichier VirtualHost.

    Donc ma redirection fonctionne, par contre j'aimerais qu'elle soit transparente.

    Voici mon fichier VirtualHost:

    ServerName pointe-du-lac.csvt.qc.ca
    Redirect / http://sites.csvt.qc.ca/049_cfppointedulac/
    ServerAlias www.pointe-du-lac.csvt.qc.ca pointe-du-lac.csvt.qc.ca
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined

    PS. J'ai aussi tenté d'inclure ProxyPass par contre mon fichier ne veut pu se mettre à jour.

    Est-ce que je m'y prend de la bonne façon pour ma redirection ?

    Merci beaucoup

    • [^] # Re: Redirection VirtualHost

      Posté par . Évalué à 3.

      tu veux rediriger quoi vers quoi ?

      ton redirect tel que construit va prendre l'utilisateur qui demande
      http://pointe-du-lac.csvt.dc.ca/
      et le renvoyer ver
      http://sites.csvt.qc.ca/049_cfppointedulac/

      si tu veux utiliser la redirection transparent, il faut virer la ligne redirect et utiliser les options proxypass et reverseproxypass

      ProxyPass / http://sites.csvt.qc.ca/049_cfppointedulac/
      ProxyPassReverse / http://sites.csvt.qc.ca/049_cfppointedulac/

      tel que documenté ici
      https://httpd.apache.org/docs/2.4/howto/reverse_proxy.html

      • [^] # Re: Redirection VirtualHost

        Posté par . Évalué à 1.

        Oui, je veux rediriger http://pointe-du-lac.csvt.qc.ca vers http://sites.csvt.qc.ca/049_cfppointedulac/

        mais garder L’URL pointe-du-lac.csvt.qc.ca

        Par contre lorsque je mets à jour mon fichier VirtualHost:

        ServerName pointe-du-lac.csvt.qc.ca
        ServerAlias www.pointe-du-lac.csvt.qc.ca pointe-du-lac.csvt.qc.ca
        ProxyPass / http://sites.csvt.qc.ca/049_cfppointedulac/
        ProxyPassReverse / http://sites.csvt.qc.ca/049_cfppointedulac/
        ErrorLog ${APACHE_LOG_DIR}/error.log
        CustomLog ${APACHE_LOG_DIR}/access.log combined

        J'ai un problème L’URL fonctionne par contre le WordPress, ne fonctionne pas bien. Seulement la page d'Accueil affiche mais toutes les autres pages du site ne fonctionne pu.

        Étrange :(

        Merci beaucoup.

        Jack

        • [^] # Re: Redirection VirtualHost

          Posté par . Évalué à 3.

          J'ai un problème L’URL fonctionne par contre le WordPress, ne fonctionne pas bien. Seulement la page d'Accueil affiche mais toutes les autres pages du site ne fonctionne pu.

          regarde mais il me semble que dans la config du wordpress il y a une ligne pour preciser le domaine,
          c'est là qu'il faut lui dire que le domaine c'est pointe-du-lac.csvt.dc.ca et pas sites.csvt.qc.ca/049_cfppointedulac/

          • [^] # Re: Redirection VirtualHost

            Posté par . Évalué à 1.

            Merci beaucoup des informations.

            Désolé du délai de ma réponse, j'ai testé plusieurs trucs. Par contre mon "bug" continue encore.

            Dès que je procède au transfert d'URL transparent, le site ne fonctionne pu, le slider affiche des caractères chinois…

            Mais si je fais un transfert d'URL sans être transparent tout fonctionne bien… très étrange…

            Merci

            Jack

            • [^] # Re: Redirection VirtualHost

              Posté par . Évalué à 2.

              essaie deja le proxypass sans le wordpress,
              en mettant juste des pages html de base et des images

              si ca marche, c'est que le wordpress chie dans la colle car il reecrit lui aussi les URL
              genre l'url standard c'est /index.php?module=page&article=2
              qu'il reecrit visuellement comme /2-monarticle-qui-va-bien

              et du coup le proxypass comprend plus
              là faut aller voir la documentation de wordpress pour savoir quelle option mettre derriere un proxypass ou dans le wordpress

              • [^] # Re: Redirection VirtualHost

                Posté par . Évalué à 1.

                Ouf ! Merci des précisions.

                Je crois avoir trouvé le problème.

                Ça semble venir du fichier .htaccess. Il semble pas le prendre en charge !

                Où son endroit n'est peut-être pas à la bonne place.

                Je vérifie à nouveau sur mes problèmes.

                Merci encore

                Jack

                • [^] # Re: Redirection VirtualHost

                  Posté par . Évalué à 2.

                  Ça semble venir du fichier .htaccess. Il semble pas le prendre en charge !

                  pour que le .htaccess soit pris en compte, il faut autoriser son usage dans la config de ton virtualhost,
                  dans le paragraphe <directory>

                  sur mes config c'est generalement ca

                  <directory /var/www/html/049_cfppointedulac/>
                     AllowOverride All
                  </directory>
                  • [^] # Re: Redirection VirtualHost

                    Posté par . Évalué à 1.

                    En fait, j'ai fait un test et mon fichier .htaccess est OK et est fonctionnel :)

                    Par contre dès que je remet en place le ProxyPass et le Reverse, le site load et load sauf la page d'accueil qui fonctionne… :(

                    Merci

                    Jack

                    • [^] # Re: Redirection VirtualHost

                      Posté par . Évalué à 3.

                      faire une petite recherche "wordpress behind reverseproxy"

                      indique par exemple ici : https://tanyanam.com/2015/07/13/setting-up-wordpress-behind-reverse-proxy/

                      qu'il faut configurer dans le wordpress, l'URL d'origine ET la nouvelle URL
                      et cela explique aussi ce qu'il faut mettre dans le vhost apache (2.2 dans le cas present)

                      chez cette personne c'est
                      supersite.com/blog qui est redirigé vers blog.mysite.com qui heberge reelement le wordpress

                      • [^] # Re: Redirection VirtualHost

                        Posté par . Évalué à 1.

                        Je n'ose pas abandonner à mon problème, la solution ne fonctionne pas.

                        Au départ je croyais que de mettre le Documentroot correctement aurait été simple.

                        Du coup quand j'ai vu que cela ne fonctionnait pas bien, je me suis dit une solution alternative à DocumentRoot et j'ai vu sur le web une redirection…

                        Mais sincèrement je vois bien que la solution de redirection passe quand l'URL change, mais l'idéal serait que je puisse faire fonctionner le DocumentRoot.

                        Je commence à être à court de solutions à mon fâcheux problème.

                        Merci beaucoup, NeoX de ton temps et de ton aide.
                        Jack

                        • [^] # Re: Redirection VirtualHost

                          Posté par . Évalué à 3.

                          il faut lire et comprendre l'enchainement

                          ton utilisateur/client => Nom de domaine => IP => serveur => virtualhost => proxypass => documentroot

                          le documentroot, c'est juste ou sont stocké les fichiers que tu fournis à tes utilisateurs

                          le proxypass reecrit les URL
                          monblog.monsite.tld => monserveur.tld/monblogwordpress

                          le proxypassreverse fait l'inverse (et est necessaire) au retour,
                          quand le serveur donne une page avec monserveur.tld/monblogwordpress => monblog.monsite.tld

                          si ca deconne toujours c'est que ton wordpress reecrit lui aussi les URL, via le htaccess
                          commence deja par virer la reecriture de wordpress via le .htaccess

                          • [^] # Re: Redirection VirtualHost

                            Posté par . Évalué à 2.

                            NeoX, je te dois un énorme merci ! De ta patience et de ton temps !

                            Je peux enfin dire problème résolu !

                            Merci encore une fois !

                            Jack

Suivre le flux des commentaires

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.