Bonjour, je suis debutant en serveur Apache. Je ne veux que de mettre en place un système LAMP de base sous mon Ubuntu 18.04 LTS (Asus VivoBook S15) afin de tester un site web que je dois modifier, avant de le faire sur mon FSI commercial.
L'installation de base (Apache/2.4.29, PHP 7.2) s'est déroulée sans problème : et html et php peuvent être interprétés et présentés correctement à partir du dossier var/www/html via le domain localhost (ServerName localhost:80 ajouté dans /etc/apache2/apache2.conf).
Alors j'ai j'ai effectué les étapes suivantes pour permettre l'accès à partir du répertoire public_html :
i) activation de la module UserDir (sudo a2enmod userdir) et modification du fichier /etc/apache2/mods-enabled/userdir.conf comme suit :
ii) activation du répertoire utilisateur virtuel par défaut (sudo a2ensite 000-default.conf) et modification du fichier /etc/apache2/sites-enabled/000-default.conf comme suit :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 <IfModule mod_userdir.c> UserDir public_html UserDir disabled root <Directory /home/*/public_html> # AllowOverride FileInfo AuthConfig Limit Indexes AllowOverride All # Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec Options ExecCGI Indexes MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec Require method GET POST OPTIONS </Directory> </IfModule>
et
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 # Global configuration ServerName localhost # sans ajout du port
iii) création du répertoire public_html dans mon répertoire home (/home/john) avec propriétaire john:john and permissions 755 (j'ai aussi essayé 777), et copie dans ce répertoire de mes fichiers index.html et index.php
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 #ServerAdmin webmaster@localhost ServerAdmin john@john-VivoBook #DocumentRoot /var/www/html DocumentRoot /home/john/public_html
iv) relance d'Apache (sudo apache2ctl restart)
v) configuration de mon navigateur Firefox (74.0.1) pour ne pas préfixer automatiquement "www" aux urls.
Je n'ai pas modifié le propriétaire (root:root) ni les permissions (755) du répertoire var/www.html .
Lors des essais l'url http://localhost/index.html fonctionne sans problème, mais http://localhost/index.php change automatiquement en www.localhost/index.php (bien que j'aie désactivé cette fonction pour Firefox) et présente un écran blanc tandis que http://localhost seul donne aussi un écran blanc (sans préfixer www au url).
Lors de ces appels, il y n'a pas eu d'erreurs dans le fichier journal /var/log/apache2/error.log . Le fichier journal/apache2/other_vhosts_access.log était vide. Voici les entrés dans le fichier journal /var/log/apache2/access.log :
localhost/index.php [convertie automatiquement dans la barre url à www.localhost/index.php] :
localhost :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 ::1 - - [07/Apr/2020:11:07:11 +0200] "GET / HTTP/1.1" 200 312 "-" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:74.0) Gecko/20100101 Firefox/74.0" 127.0.0.1 - - [07/Apr/2020:11:19:39 +0200] "GET /index.php HTTP/1.1" 200 312 "-" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:74.0) Gecko/20100101 Firefox/74.0"
J'avais modifié le fichier /etc/apache2/mods-available/dir.conf pour donner préférence à index.php mais pas de différence quand je l'ai remis à une préférence pour index.html (toujours pas de chargement automatique de l'index à partir de la racine localhost).
Code : Sélectionner tout - Visualiser dans une fenêtre à part 127.0.0.1 - - [07/Apr/2020:11:24:27 +0200] "GET / HTTP/1.1" 200 312 "-" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:74.0) Gecko/20100101 Firefox/74.0"
Qu'est-ce que j'ai fait d'incorret ? Je me demande s'il y aurait quelques chose que PHP ne recevrait pas correctement, éventuellement à corriger avec .htaccess ?
Salutations et merci,
John
P.S. J'ai réussi à obtenir un résultat satisfaisant sans public_html en changeant le propriétaire du répertoire var/www/html à john:john, en créant en lien symbolique à home/john et en changeant le propriétaire du dernier a john:john, mais cela m'est incommode puisque ma partition root se rempli alors avec des données personnelles.
Partager