Apache2 me joue des tours

Bonjour,

Après moults recherches, je suis un peu perdu pour avancer. Je souhaite empêcher les demandes HTTP et HTTPS de se faire sur l’adresse IP de mon serveur que j’héberge chez moi derrière une freebox. N’y arrivant je me pose des questions un peu plus large car la configuration de mes vhosts me semble correcte et je tombe sur cela :

root@srv-web-idlas:/etc/apache2/sites-available# apache2 -S [Sat Feb 20 13:56:42.000213 2016] [core:warn] [pid 2363] AH00111: Config variable ${APACHE_LOCK_DIR} is not defined [Sat Feb 20 13:56:42.000299 2016] [core:warn] [pid 2363] AH00111: Config variable ${APACHE_PID_FILE} is not defined [Sat Feb 20 13:56:42.000320 2016] [core:warn] [pid 2363] AH00111: Config variable ${APACHE_RUN_USER} is not defined [Sat Feb 20 13:56:42.000329 2016] [core:warn] [pid 2363] AH00111: Config variable ${APACHE_RUN_GROUP} is not defined [Sat Feb 20 13:56:42.000346 2016] [core:warn] [pid 2363] AH00111: Config variable ${APACHE_LOG_DIR} is not defined [Sat Feb 20 13:56:42.021227 2016] [core:warn] [pid 2363] AH00111: Config variable ${APACHE_RUN_DIR} is not defined [Sat Feb 20 13:56:42.021930 2016] [core:warn] [pid 2363] AH00111: Config variable ${APACHE_RUN_DIR} is not defined [Sat Feb 20 13:56:42.022375 2016] [core:warn] [pid 2363] AH00111: Config variable ${APACHE_LOG_DIR} is not defined AH00526: Syntax error on line 74 of /etc/apache2/apache2.conf: Invalid Mutex directory in argument file:${APACHE_LOCK_DIR}

Comment corriger la définition de ces variables ?

Quel lien avec envvars ?

Merci pour vos suggestions, liens, aides, … :pray:

Cordialement.

il faudrait déjà voir se que tu as mis comme connerie la : Syntax error on line 74 of /etc/apache2/apache2.conf

:wink:

Jimbo,

J’avais pas vu. :blush:
Voici le code concerné :

71 # 72 # The accept serialization lock file MUST BE STORED ON A LOCAL DISK. 73 # 74 Mutex file:${APACHE_LOCK_DIR} default 75
C’est du standard. Je n’y ai pas touché. Promis, juré. :astonished:
Une chose de plus à comprendre. :017

Des idées pour remettre tout cela d’aplomb.

Merci par avance.

Très certainement en relation avec le fait que la variable n’est pas définie. Comment définir ces variables ? Cela se passe-t-il dans envvars ?

t’as pas fait un upgrade de ta distribution ?

Non. Pas d’upgrade. Je suis parti d’une debian Jessie. J’ai déjà parcouru pas mal de sites sur ce sujet. Rien trouvé. Certains parlent en effet de mises à jour ce qui n’est pas mon cas. Je regarde les logs. Une idée ?

Un site propose de faire cela :

Qu’en penses-tu ?

t’es sur que t’as pas bougé les repertoires racine des vhost ?

montre la config d’un vhost pour voir ?

et le error.log de Apache

Suite de mes investigations. Ce site explique bien les choses et je m’y retrouve. http://www.howdididothat.info/2014/10/07/invalid-mutex-directory-in-argument-file/

Par rapport à ma problématique voici ce que donne apache2ctl -t -D DUMP_VHOSTS

VirtualHost configuration: 192.168.0.51:443 is a NameVirtualHost default server capharnaum.net (/etc/apache2/sites-enabled/capharnaum.net-le-ssl.conf:7) port 443 namevhost capharnaum.net (/etc/apache2/sites-enabled/capharnaum.net-le-ssl.conf:7) alias www.capharnaum.net port 443 namevhost latriadedubienetre.fr (/etc/apache2/sites-enabled/latriadedubienetre.fr-le-ssl.conf:7) alias www.latriadedubienetre.fr 192.168.0.51:80 is a NameVirtualHost default server capharnaum.net (/etc/apache2/sites-enabled/capharnaum.net.conf:1) port 80 namevhost capharnaum.net (/etc/apache2/sites-enabled/capharnaum.net.conf:1) alias www.capharnaum.net port 80 namevhost latriadedubienetre.fr (/etc/apache2/sites-enabled/latriadedubienetre.fr.conf:1) alias www.latriadedubienetre.fr

Moi ce que j’aimerais c’est que le ‘default server’ ne soit pas ‘capharnaum.net’ mais quelque chose d’autre. D’après ce que j’ai compris APACHE range les vhost par ordre alphabétique et va utiliser le premier comme ‘default server’. Donc du coup comment faire pour que lorsque les internautes tape l’adresse IP de ma freebox ils ne se retrouvent pas sur capharnaum.net mais là où je veux ?

Pour ce que tu m’as demandé, voici donc la configuration d’un de mes vhost :

<IfModule mod_ssl.c>

<VirtualHost 192.168.0.51:443>
        ServerAdmin philippe.idlas@latriadedubienetre.fr
        ServerName latriadedubienetre.fr
        ServerAlias www.latriadedubienetre.fr

        DocumentRoot /var/www/latriadedubienetre

        <Directory /var/www/latriadedubientre>
                Options None
                AllowOverride None
                Require all granted
        </Directory>

        ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
        <Directory "/usr/lib/cgi-bin">
                AllowOverride None
                Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
                Require all granted
        </Directory>

        ErrorLog /var/log/apache2/error.log

        # Possible values include: debug, info, notice, warn, error, crit,
        # alert, emerg.
        LogLevel warn

        CustomLog /var/log/apache2/access.log combined

    Alias /doc/ "/usr/share/doc/"
    <Directory "/usr/share/doc/">
        Options Indexes FollowSymLinks
        AllowOverride None
        Require all denied
        Require ip 192.168.0
    </Directory>
SSLCertificateFile /etc/letsencrypt/live/capharnaum.net/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/capharnaum.net/privkey.pem
Include /etc/letsencrypt/options-ssl-apache.conf
</VirtualHost>

</IfModule>

Quant au error.log, rien de particulier :

[Sun Feb 21 13:30:23.594490 2016] [mpm_prefork:notice] [pid 1177] AH00163: Apache/2.4.10 (Debian) OpenSSL/1.0.1k configured -- resuming normal operations [Sun Feb 21 13:30:23.594512 2016] [core:notice] [pid 1177] AH00094: Command line: '/usr/sbin/apache2'

Je continue mes recherches mais déjà je comprends mieux et l’écart qui existe entre le choix des commandes qui donnent des affichages différents et la façon dont APACHE gère le ‘default server’ même si pour l’instant je n’arrive pas obtenir ce que je souhaite.

concrètement tu aimerais quoi ? ip ext freebox : 80 tombe sur quoi ? etc…

[quote=“pidlas”]Moi ce que j’aimerais c’est que le ‘default server’ ne soit pas ‘capharnaum.net’ mais quelque chose d’autre. D’après ce que j’ai compris APACHE range les vhost par ordre alphabétique et va utiliser le premier comme ‘default server’. Donc du coup comment faire pour que lorsque les internautes tape l’adresse IP de ma freebox ils ne se retrouvent pas sur capharnaum.net mais là où je veux ?
[/quote]

Tu as normalement un fichier [mono]/etc/apache2/sites-available/default[/mono]créé à l’install. Lorsque tu actives ce vhost ([mono]a2ensite default[/mono]), le lien créé est [mono]/etc/apache2/sites-enabled/000-default[/mono] et sera donc le premier lu par apache (à moins que tu créés un vhost [mono]0000-bidule[/mono]), et donc le vhost par défaut.