[RESOLU][APACHE] configuration en local

configuration en local [RESOLU][APACHE] - Divers - Programmation

Marsh Posté le 27-03-2023 à 16:43:43    

Bonjour,
 
Je débute et j'avoue un peu galéré. J'essaie de me former à HTML/PHP et j'ai installé un serveur apache sur mon linux et j'ai regardé qq tutos mais je bloque sur un point.
J'ai donc mon apache qui fonctionne (page it works).
Mais je voudrais utiliser un répertoire en dehors de /var/www/html.
J'ai créé un fichier de conf dans sites-available/ :
<VirtualHost *:80>
    ServerAdmin test@exemple.com
 

Citation :

# Domaines gérés par ce virtualhost
    ServerName monpremier.fr
    ServerAlias *.monpremier.fr
 
 # Racine Web
    DocumentRoot /var/www/monpremier.fr
 
 # Règles spécifiques s'appliquant à ce dossier
    <Directory /var/www/monpremier.fr>
        Options -Indexes +FollowSymLinks
        AllowOverride All
    </Directory>
 
    # Où placer les logs pour cette hôte
    ErrorLog /home/XXX/projet-web/monpremier/logs/error.log
    CustomLog /home/XXX/projet-web/monpremier/logs/access.log combined
 
</VirtualHost>


J'ai ensuite créé un lien symbolique :

Citation :

sudo ln -s ~/projet-web/monpremier/ /var/www/monpremier.fr


Puis j'ai créé le lien vers sites-enabled :

Citation :

sudo a2ensite monpremierEnabling site monpremier.
To activate the new configuration, you need to run:
  systemctl reload apache2


Et enfin tester :

Citation :

sudo apache2ctl configtest
AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1. Set the 'ServerName' directive globally to suppress this message
Syntax OK


 
Et donc je suis bloqué là. Je ne sais pas comment faire.
Merci par avance.


Message édité par lemime le 07-04-2023 à 11:09:08
Reply

Marsh Posté le 27-03-2023 à 16:43:43   

Reply

Marsh Posté le 27-03-2023 à 17:42:58    

Pourquoi tu te prends pas un LAMP (Apache, Mysql et PHP pour Linux) :??:
C'est déjà tout bien configuré...


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
Reply

Marsh Posté le 27-03-2023 à 18:52:59    

Salut,
Parce que je n'y ai pas pensé et que comme indiqué, je débute.
Je vais essayer ça.
Merci.

Reply

Marsh Posté le 28-03-2023 à 13:39:31    

Lu,
 
Tu es bloqué sur quoi ?
 
Parce que la commande que tu donnes, c'est pour tester la configuration d'Apache, pas le redémarrer comme il te le dit lors de ton a2ensite précédent. Et le message d'erreur n'est qu'un warning à ignorer.
 

Citation :

Pourquoi tu te prends pas un LAMP (Apache, Mysql et PHP pour Linux) :??:


 
Je suis d'avis contraire. Personnellement je recommanderais l'usage d'une installation via les paquets de la distribution que d'installer LAMP ou assimilé. Ca crée moins de conflit et tu bénéficies des MàJ avec ton système.


Message édité par pluj le 29-03-2023 à 13:56:36
Reply

Marsh Posté le 28-03-2023 à 17:41:34    

Vu qu'il est débutant, je suis parti du principe qu'il voulait juste faire fonctionner tout ça pour permettre l'install et l'exécution d'un site web pour tester. Mais oui, on met pas un LAMP sur un serveur en production :jap:


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
Reply

Marsh Posté le 29-03-2023 à 08:57:19    

Bonjour,
En fait, mon objectif était de créer un virtualhost et faire pointer mon serveur web vers un répertoire différent de /var/www.
J'ai créé un fichier de conf avec un virtualhost mais apache ne pointe pas dessus.
J'ai les messages d'erreur ci-dessus.
¨Pour l'install de LAMP, j'ai jeté un oeil sur le wiki ubuntu (j'ai une linux mint) et il propose une install des paquets un à un, donc pas de souci de mise à jour, je pense.
https://doc.ubuntu-fr.org/lamp#meth [...] es_paquets

Reply

Marsh Posté le 29-03-2023 à 18:01:02    

Lu,
 

Citation :

sudo a2ensite monpremierEnabling site monpremier.


 
Comment s'appelle ton fichier ? Que donne un

Code :
  1. httpd -t -D DUMP_VHOSTS

(httpd ou apache2ctl ?)
 
Apache a été redémarré et/ou son fichier de configuration relu au moins ?
 
Comment résous-tu monpremier.fr ? Via /etc/hosts ?

Reply

Marsh Posté le 30-03-2023 à 12:58:50    

avec Caddy ta conf est faite en 2 secondes :  
https://www.youtube.com/watch?v=JB4Zu87NABQ


---------------
Blablaté par Harko
Reply

Marsh Posté le 31-03-2023 à 10:30:15    

Bonjour,
Je suis sur Apache.
Voici le fichier :

Citation :

xxx@linuxmint:~$ cat /etc/apache2/sites-available/test-default.conf
<VirtualHost *:80>
 ServerName www.example.com
 ServerAlias example.com
 DocumentRoot "/home/xxx/projet-web/monpremier"
 <Directory "/home/xxx/projet-web/monpremier">
  Options +FollowSymLinks
  AllowOverride all
  Require all granted
 </Directory>
 ErrorLog /home/xxx/projet-web/error.monpremier.com.log
 CustomLog /home/xxx/projet-web/access.monpremier.com.log combined
</VirtualHost>

Reply

Marsh Posté le 31-03-2023 à 11:14:37    

Bon alors,  
 
J'ai repris toute ma conf :
 

Code :
  1. "/etc/apache2/sites-available/example.com.conf" :
  2. <VirtualHost *:8080>
  3.         ServerName www.example.com
  4.         ServerAlias example.com
  5.         DocumentRoot "/home/xxx/projet-web/example"
  6.         <Directory "/home/xxx/projet-web/example">
  7.                 Options +FollowSymLinks
  8.                 AllowOverride all
  9.                 Require all granted
  10.         </Directory>
  11.         ErrorLog /home/xxx/projet-web/error.example.com.log
  12.         CustomLog /home/xxx/projet-web/access.example.com.log combined
  13. </VirtualHost>


 
Puis j'ai activé :

Code :
  1. sudo a2ensite example.com


 
J'ai relancé le serveur Apache :
 

Code :
  1. xxx@linuxmint:~$ systemctl reload apache2
  2. Failed to reload apache2.service: Message recipient disconnected from message bus without replying
  3. See system logs and 'systemctl status apache2.service' for details.


 
 

Code :
  1. xxx@xxxmint:~$ systemctl status apache2.service
  2. ● apache2.service - The Apache HTTP Server
  3.      Loaded: loaded (/lib/systemd/system/apache2.service; disabled; vendor preset: enabled)
  4.      Active: active (running) since Wed 2023-03-29 14:33:16 CEST; 1 day 20h ago
  5.        Docs: https://httpd.apache.org/docs/2.4/
  6.     Process: 120310 ExecReload=/usr/sbin/apachectl graceful (code=exited, status=0/SUCCESS)
  7.    Main PID: 61145 (apache2)
  8.       Tasks: 6 (limit: 18915)
  9.      Memory: 34.0M
  10.         CPU: 11.491s
  11.      CGroup: /system.slice/apache2.service
  12.              ├─ 61145 /usr/sbin/apache2 -k start
  13.              ├─120322 /usr/sbin/apache2 -k start
  14.              ├─120323 /usr/sbin/apache2 -k start
  15.              ├─120324 /usr/sbin/apache2 -k start
  16.              ├─120325 /usr/sbin/apache2 -k start
  17.              └─120326 /usr/sbin/apache2 -k start
  18. mars 29 14:33:16 xxxmint systemd[1]: Started The Apache HTTP Server.
  19. mars 29 14:51:04 xxxmint systemd[1]: Reloading The Apache HTTP Server...
  20. mars 29 14:51:04 xxxmint apachectl[63405]: AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1. Set the 'ServerName' direct>
  21. mars 29 14:51:04 xxxmint systemd[1]: Reloaded The Apache HTTP Server.
  22. mars 30 00:00:01 xxxmint systemd[1]: Reloading The Apache HTTP Server...
  23. mars 30 00:00:01 xxxmint apachectl[79041]: AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1. Set the 'ServerName' direct>
  24. mars 30 00:00:01 xxxmint systemd[1]: Reloaded The Apache HTTP Server.
  25. mars 31 00:00:01 xxxmint systemd[1]: Reloading The Apache HTTP Server...
  26. mars 31 00:00:01 xxxmint apachectl[120315]: AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1. Set the 'ServerName' direc>
  27. mars 31 00:00:01 xxxmint systemd[1]: Reloaded The Apache HTTP Server.


 
Et quand je passe la commande suivante :
 

Code :
  1. xxx@xxxmint:~$ sudo apache2ctl -t -D DUMP_VHOSTS
  2. AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1. Set the 'ServerName' directive globally to suppress this message
  3. VirtualHost configuration:
  4. *:80                   127.0.1.1 (/etc/apache2/sites-enabled/000-default.conf:1)
  5. *:8080                 www.example.com (/etc/apache2/sites-enabled/example.com.conf:1)


 
Dans mon /etc/hosts pour la résolution, j'ai mis la ligne suivante :

Code :
  1. 127.0.0.1       localhost
  2. 127.0.0.1       www.example.com


 
 

Reply

Marsh Posté le 31-03-2023 à 11:14:37   

Reply

Marsh Posté le 31-03-2023 à 11:36:23    

Pff !
J'ai essayé pleins de conf et ça donne rien. La dernière :
 

Code :
  1. xxx@xxxmint:~$ sudo apache2ctl -t -D DUMP_VHOSTS
  2. AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1. Set the 'ServerName' directive globally to suppress this message
  3. VirtualHost configuration:
  4. *:80                   localhost (/etc/apache2/sites-enabled/000-default.conf:1)
  5. *:8080                 www.example.com (/etc/apache2/sites-enabled/example.com.conf:1)


 
avec /etc/hosts :
 

Code :
  1. 127.0.0.1       localhost
  2. 127.0.1.1       hostname www.example.com


 
et fichier  

Code :
  1. /etc/apache2/sites-enabled/000-default.conf :
  2. ServerName localhost
  3. ServerAdmin webmaster@localhost
  4. DocumentRoot /var/www/html


 

Code :
  1. /etc/apache2/sites-enabled/example.com.conf
  2. <VirtualHost *:8080>
  3. ServerName www.example.com
  4. ServerAlias example.com
  5. DocumentRoot "/home/brahim/projet-web/example"
  6. <Directory "/home/brahim/projet-web/example">
  7.  Options +FollowSymLinks
  8.  AllowOverride all
  9.  Require all granted
  10. </Directory>
  11. ErrorLog /home/xxx/projet-web/error.example.com.log
  12. CustomLog /home/xxx/projet-web/access.example.com.log combined
  13. </VirtualHost>


 

Reply

Marsh Posté le 31-03-2023 à 14:14:53    

Lu,
 

Citation :

ça donne rien


 
c'est-à-dire ? http://www.example.com:8080/ aboutit ou pas ? Si oui, où ?
 

Code :
  1. ServerAlias example.com


 
Ta machine ne saura visiblement pas résoudre example.com

Reply

Marsh Posté le 31-03-2023 à 16:36:36    

Non, ça ne donne rien.
 
Alors j'ai tout défait et j'ai refait une conf :

Code :
  1. <VirtualHost *:8080>
  2. ServerName localhost
  3. ServerAlias monpremier.com
  4. DocumentRoot "/home/xxx/projet-web/monpremier"
  5. <Directory "/home/xxx/projet-web/monpremier">
  6.  Options +FollowSymLinks
  7.  AllowOverride all
  8.  Require all granted
  9. </Directory>
  10. ErrorLog /home/xxx/projet-web/error.monpremier.com.log
  11. CustomLog /home/xxx/projet-web/access.monpremier.com.log combined


 
avec /etc/hosts :
127.0.0.1 localhost monpremier.com
 
Tout démarre sans erreur :
 

Code :
  1. xxx@xxxmint:~$ sudo apache2ctl -t -D DUMP_VHOSTS
  2. VirtualHost configuration:
  3. *:80                   localhost (/etc/apache2/sites-enabled/000-default.conf:1)
  4. *:8080                 localhost (/etc/apache2/sites-enabled/monpremier.com.conf:1)
  5. xxx@xxxmint:~$ sudo systemctl status apache2
  6. ● apache2.service - The Apache HTTP Server
  7.      Loaded: loaded (/lib/systemd/system/apache2.service; disabled; vendor preset: enabled)
  8.      Active: active (running) since Fri 2023-03-31 16:13:15 CEST; 4min 51s ago
  9.        Docs: https://httpd.apache.org/docs/2.4/
  10.     Process: 3476 ExecStart=/usr/sbin/apachectl start (code=exited, status=0/SUCCESS)
  11.     Process: 4368 ExecReload=/usr/sbin/apachectl graceful (code=exited, status=0/SUCCESS)
  12.    Main PID: 3480 (apache2)
  13.       Tasks: 6 (limit: 18915)
  14.      Memory: 34.2M
  15.         CPU: 673ms
  16.      CGroup: /system.slice/apache2.service
  17.              ├─3480 /usr/sbin/apache2 -k start
  18.              ├─4372 /usr/sbin/apache2 -k start
  19.              ├─4373 /usr/sbin/apache2 -k start
  20.              ├─4374 /usr/sbin/apache2 -k start
  21.              ├─4375 /usr/sbin/apache2 -k start
  22.              └─4376 /usr/sbin/apache2 -k start
  23. mars 31 16:13:15 xxxmint systemd[1]: Starting The Apache HTTP Server...
  24. mars 31 16:13:15 xxxmint systemd[1]: Started The Apache HTTP Server.
  25. mars 31 16:17:20 xxxmint systemd[1]: Reloading The Apache HTTP Server...
  26. mars 31 16:17:20 xxxmint systemd[1]: Reloaded The Apache HTTP Server.


 

Code :
  1. xxx@xxxmint:~$ sudo apache2ctl -t -D DUMP_VHOSTS
  2. VirtualHost configuration:
  3. *:80                   localhost (/etc/apache2/sites-enabled/000-default.conf:1)
  4. *:8080                 localhost (/etc/apache2/sites-enabled/monpremier.com.conf:1)


 
 
Mais rien dans le navigateur :

Code :
  1. La connexion a échoué
  2. Firefox ne peut établir de connexion avec le serveur à l’adresse localhost:8080.
  3.     Le site est peut-être temporairement indisponible ou surchargé. Réessayez plus tard ;
  4.     Si vous n’arrivez à naviguer sur aucun site, vérifiez la connexion au réseau de votre ordinateur ;
  5.     Si votre ordinateur ou votre réseau est protégé par un pare-feu ou un proxy, assurez-vous que Firefox est autorisé à accéder au Web.


 
Et la commande lsof ne me renvoie pas d'écoute sur le 8080 :

Code :
  1. xxx@xxxmint:~$ sudo lsof -n -P | grep LIST | grep apach
  2. lsof: WARNING: can't stat() fuse.gvfsd-fuse file system /run/user/1000/gvfs
  3.       Output information may be incomplete.
  4. lsof: WARNING: can't stat() fuse.portal file system /run/user/1000/doc
  5.       Output information may be incomplete.
  6. apache2   3480                           root    4u     IPv6              52286       0t0        TCP *:80 (LISTEN)
  7. apache2   4701                       www-data    4u     IPv6              52286       0t0        TCP *:80 (LISTEN)
  8. apache2   4702                       www-data    4u     IPv6              52286       0t0        TCP *:80 (LISTEN)
  9. apache2   4703                       www-data    4u     IPv6              52286       0t0        TCP *:80 (LISTEN)
  10. apache2   4704                       www-data    4u     IPv6              52286       0t0        TCP *:80 (LISTEN)
  11. apache2   4705                       www-data    4u     IPv6              52286       0t0        TCP *:80 (LISTEN)


Message édité par lemime le 31-03-2023 à 16:37:56
Reply

Marsh Posté le 31-03-2023 à 16:50:45    

Alors,
J'ai lancé la commande suivante pour lister les vhosts :

Citation :


xxx@xxxmint:~$ sudo apache2ctl -S
VirtualHost configuration:
*:80                   localhost (/etc/apache2/sites-enabled/000-default.conf:1)
*:8080                 localhost (/etc/apache2/sites-enabled/monpremier.com.conf:1)
ServerRoot: "/etc/apache2"
Main DocumentRoot: "/var/www/html"
Main ErrorLog: "/var/log/apache2/error.log"
Mutex default: dir="/var/run/apache2/" mechanism=default  
Mutex mpm-accept: using_defaults
Mutex watchdog-callback: using_defaults
PidFile: "/var/run/apache2/apache2.pid"
Define: DUMP_VHOSTS
Define: DUMP_RUN_CFG
User: name="www-data" id=33
Group: name="www-data" id=33


 
Et je n'ai donc que la conf défaut qui est chargée, j'ai l'impression.

Reply

Marsh Posté le 31-03-2023 à 17:27:35    

Mais tu as un

Code :
  1. Listen 8080

quelque part dans ta configuration pour avoir écrit

Code :
  1. <VirtualHost *:8080>

?

Reply

Marsh Posté le 31-03-2023 à 17:35:13    

Ok mais ça n'écoute pas. Le lsof ou le netstat ne me renvoie rien sur le 8080.
J'ai vérifié la résolution de nom :

Code :
  1. xxx@xxxmint:~$ nslookup www.monpremier.com
  2. Server:  127.0.0.53
  3. Address: 127.0.0.53#53
  4. Name: www.monpremier.com
  5. Address: 127.0.0.1


Donc ça fonctionne de ce côté, a priori.

Reply

Marsh Posté le 31-03-2023 à 17:45:43    

Peut-être que je dois désactiver le virtualhost par défaut.
Bon, en tout cas, merci pour l'aide. Je vais continuer à bidouiller.
On verra bien ce que ça donne.

Reply

Marsh Posté le 03-04-2023 à 13:52:53    

Bonjour,
 
Bon, j'avance un peu :
Il manquait l'entrée Listen 8080 dans le fichier ports.conf  
J'ai tout relancé mais je me tape maintenant une erreur 403.

Reply

Marsh Posté le 03-04-2023 à 13:56:19    

Citation :

J'ai tout relancé mais je me tape maintenant une erreur 403.


 
A cause du lien symbolique ? Parce que tu n'as pas de fichier d'index et pas remis l'options Indexes ?
 
Quelque chose de plus explicite peut être dans les journaux d'erreurs ?

Reply

Marsh Posté le 03-04-2023 à 15:34:03    

Alors, je t'avoue que je ne sais pas. Voilà à quoi ressemble mon répertoire :

Citation :

xxx@xxxmint:~/projet-web/monpremier$ ls -l
total 44
-rw-r--r-- 1        root   root     5451 avril  3 15:17      access.monpremier.log
-rw-r--r-- 1        root   root     9099 avril  3 15:17      error.monpremier.log
drwxrwxr-x 2    xxx www-data 4096 févr. 17 14:34  images
-rw-r--r-- 1        xxx www-data  533 févr. 17 14:44   index.html
drwxrwxr-x 2    xxx www-data 4096 mars  27 16:02 logs
-rw-r--r-- 1        xxx www-data  974 mars  17 14:49 prem-page.html
drwxrwxr-x 2    xxx www-data 4096 févr. 16 15:35  scripts
drwxrwxr-x 2    xxx www-data 4096 févr. 17 14:37  styles


 

Reply

Marsh Posté le 03-04-2023 à 15:42:05    

Au début mon répertoire m'appartenait, j'ai donc ensuite ajouté mon user au groupe www-data et modifié les droits mais sans effet.

Reply

Marsh Posté le 03-04-2023 à 17:18:55    

Bon, j'ai fini par trouver ! saloperie !
Il fallait que ma home directory soit en 755 pour que le user www-data puisse descendre dans l'arborescence :
Donc j'étais :

Citation :

xxx@xxxmint:~/projet-web$ ls -ld ~
drwxr-x--- 40 xxx xxx 4096 avril  3 16:45 /home/xxx


et j'ai fait :

Citation :

xxx@xxxmint:~/projet-web$ chmod 755 /home/xxx


pour être :

Citation :

xxx@xxxmint:~/projet-web$ ls -ld ~
drwxr-xr-x 40 xxx xxx 4096 avril  3 16:45 /home/xxx


et reload de la conf apache !

Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed