Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 02/10/2015, à 22:52

Garrulix

Installation d'Apache : ça semble marcher, mais en réalité non !

M'étant déclaré comme root puis ayant lancé "apt-get install apache2" tout semblait aller sans problème.
Or que vois-je, lorsque je veux ouvrir l'adresse http://localhost sur mon navigateur ?
Une "Page 403" me dit ceci :
Forbidden
You don't have permission to access / on this server.
Apache/2.4.7 (Ubuntu) Server at localhost Port 80

Je me remets à mon shell et je lance : /etc/init.d/apache2 restart
A nouveau ... ça roule. Message Ok.

Je me remets à mon navigateur. Tentative de rafraichir ma "page 403" : échec, cette page reste une page 403.

J'ai fait aussi : apt-get install apache2-doc mysql-server php5 libapache2-mod-php5 php5-mysql
Je n'ai vu aucun message d'erreur s'afficher au cours de ces installations.

Hors ligne

#2 Le 03/10/2015, à 08:57

lann

Re : Installation d'Apache : ça semble marcher, mais en réalité non !

ls -laht /var/www

En ligne

#3 Le 04/10/2015, à 18:04

Garrulix

Re : Installation d'Apache : ça semble marcher, mais en réalité non !

lann a écrit :
ls -laht /var/www

... et alors ?
Il n'y a aucun fichier caché.
Il n'y en a pas non plus à var/www/html, qui devrait être la vraie racine.

Sur mon laptop ça fonctionne à merveille. Je fais la même manipulation sur ce PC, et voici que ça foire. Bravo Ubuntu. Il n'est même pas possible de déterminer avec certitude si c'est var/www ou var/www/html qui est la racine.

Dernière modification par Garrulix (Le 04/10/2015, à 18:08)

Hors ligne

#4 Le 04/10/2015, à 18:53

Alex10336

Re : Installation d'Apache : ça semble marcher, mais en réalité non !

Garrulix a écrit :

[...] Bravo Ubuntu. Il n'est même pas possible de déterminer avec certitude si c'est var/www ou var/www/html qui est la racine.

Évidemment que si, inutile de cracher sur ubuntu parce que vous savez pas où chercher....

Selon la version d'apache, la configuration a évolué...

cat /etc/apache2/*.conf | grep Root

ou

cat /etc/apache2/sites-enabled/*.conf | grep Root

« On ne répond pas à une question par une autre question. » (moi ;-) )

Hors ligne

#5 Le 04/10/2015, à 19:55

lann

Re : Installation d'Apache : ça semble marcher, mais en réalité non !

Garulix a écrit :

... et alors ?
Il n'y a aucun fichier caché.

C'était pour connaître les droits sur les fichiers

En ligne

#6 Le 04/10/2015, à 20:29

mazarini

Re : Installation d'Apache : ça semble marcher, mais en réalité non !

Dans mon fichier apache2.conf, j'ai sous Debian :

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

C'est à priori "Require all granted" qui est important et qui a changé depuis Apache 2.2. On peut trouver ce paramétrage également dans les fichiers de sites-enabled.

La vérification demandé par lann reste également à faire.


S'il existait une école de la politique, les locaux devraient être édifiés rue de la Santé. Les élèves pourraient s'habituer. (Pierre Dac)

Hors ligne

#7 Le 04/10/2015, à 21:12

Rufus T. Firefly

Re : Installation d'Apache : ça semble marcher, mais en réalité non !

Salut,

De toutes façons le répertoire racine peut être défini n'importe où !
Il suffit de l'indiquer ici, dans /etc/apache2/apache2.conf
C'est vers la ligne 150

# Sets the default security model of the Apache2 HTTPD server. It does
# not allow access to the root filesystem outside of /usr/share and /var/www.
# The former is used by web applications packaged in Debian,
# the latter may be used for local directories served by the web server. If
# your system is serving content from a sub-directory in /srv you must allow
# access here, or in any related virtual host.
<Directory />
	Options FollowSymLinks
	AllowOverride None
	Require all denied
</Directory>

<Directory /usr/share>
	AllowOverride None
	Require all granted
</Directory>

<Directory /var/www/> <--------------------- à modifier
	Options Indexes FollowSymLinks
	AllowOverride None
	Require all granted
</Directory>

#<Directory /srv/>
#	Options Indexes FollowSymLinks
#	AllowOverride None
#	Require all granted
#</Directory>

On remarque qu'il est même prévu de le mettre dans /srv, un répertoire prévu à cet usage dans la hiérarchie actuelle, plutôt que dans /var/www

D'autre part, il faut aussi modifier en conséquence le virtual host par défaut dans /etc/apache2/sites-available/000-defaiult.conf

<VirtualHost *:80>
	# The ServerName directive sets the request scheme, hostname and port that
	# the server uses to identify itself. This is used when creating
	# redirection URLs. In the context of virtual hosts, the ServerName
	# specifies what hostname must appear in the request's Host: header to
	# match this virtual host. For the default virtual host (this file) this
	# value is not decisive as it is used as a last resort host regardless.
	# However, you must set it for any further virtual host explicitly.
	#ServerName www.example.com

	ServerAdmin webmaster@localhost
	DocumentRoot /var/www <--------------------- à modifier

	# Available loglevels: trace8, ..., trace1, debug, info, notice, warn,
	# error, crit, alert, emerg.
	# It is also possible to configure the loglevel for particular
	# modules, e.g.
	#LogLevel info ssl:warn

	ErrorLog ${APACHE_LOG_DIR}/error.log
	CustomLog ${APACHE_LOG_DIR}/access.log combined

	# For most configuration files from conf-available/, which are
	# enabled or disabled at a global level, it is possible to
	# include a line for only one particular virtual host. For example the
	# following line enables the CGI configuration for this host only
	# after it has been globally disabled with "a2disconf".
	#Include conf-available/serve-cgi-bin.conf
</VirtualHost>

Mais c'est toujours pareil quand on s'embarque sans biscuits dans des trucs tout de même assez élaborés : tôt ou tard on tombe sur un os !


La provocation est une façon de remettre la réalité sur ses pieds. (Bertolt Brecht)
Il n'y a pas de route royale pour la science et ceux-là seulement ont chance d'arriver à ses sommets lumineux qui ne craignent pas de se fatiguer à gravir ses sentiers escarpés. (Karl Marx)
Il est devenu plus facile de penser la fin du monde que la fin du capitalisme

Hors ligne

#8 Le 12/10/2015, à 06:15

Garrulix

Re : Installation d'Apache : ça semble marcher, mais en réalité non !

Alex10336 a écrit :
cat /etc/apache2/*.conf | grep Root

Résultat :
# ServerRoot: The top of the directory tree under which the server's
#ServerRoot "/etc/apache2"

Alex10336 a écrit :

ou

cat /etc/apache2/sites-enabled/*.conf | grep Root

Là ça devient plus fructueux :
    DocumentRoot /var/www/html
... que je retrouve dans l'unique fichier de ce répertoire : 000-default.conf

Hors ligne

#9 Le 12/10/2015, à 06:20

Garrulix

Re : Installation d'Apache : ça semble marcher, mais en réalité non !

lann a écrit :
Garulix a écrit :

... et alors ?
Il n'y a aucun fichier caché.

C'était pour connaître les droits sur les fichiers

/var# ls -laht /var/www
total 72K
drwxr-xr-x 14 root     root     4,0K oct.  11 19:42 ../
drwx------  6 zorglub machin 4,0K oct.  11 19:36 ./
drwx------ 16 zorglub machin 4,0K oct.  11 19:27 html/
drwx------ 11 zorglub machin 4,0K juin   9  2014 projets/
drwx------ 12 zorglub machin 4,0K juin   9  2014 sujets/

"projets/" et "sujets/" sont des répertoires que j'ai créés pour y placer des fichiers qui sont "inclus" (appels à include ou require) dans des fichiers PHP tout en étant hors de la racine (qui est html/) de façon à rester hors d'atteinte.

Dernière modification par Garrulix (Le 12/10/2015, à 06:21)

Hors ligne

#10 Le 12/10/2015, à 06:29

Garrulix

Re : Installation d'Apache : ça semble marcher, mais en réalité non !

mazarini a écrit :

Dans mon fichier apache2.conf, j'ai sous Debian :

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

C'est à priori "Require all granted" qui est important et qui a changé depuis Apache 2.2. On peut trouver ce paramétrage également dans les fichiers de sites-enabled.

"Require all granted" : important ? ... à retirer ? Je l'ai laissé en place.

# Ci-dessous : modifié /var/www/ en /var/www/html/
<Directory /var/www/html/>
    Options Indexes FollowSymLinks
    AllowOverride None
    Require all granted
</Directory>

Hors ligne

#11 Le 12/10/2015, à 06:33

Garrulix

Re : Installation d'Apache : ça semble marcher, mais en réalité non !

Rufus T. Firefly a écrit :

Salut,

De toutes façons le répertoire racine peut être défini n'importe où !
Il suffit de l'indiquer ici, dans /etc/apache2/apache2.conf
C'est vers la ligne 150 .............

1ère modification : faite. Modifié apache2/apache2.conf pour remplacer /var/www par /var/www/html

2ème modification : je n'ai pas dû la faire. C'était déjà, à ce niveau, /var/www/html

Comme quoi ces deux fichiers se contredisaient.

Hors ligne

#12 Le 12/10/2015, à 06:57

Garrulix

Re : Installation d'Apache : ça semble marcher, mais en réalité non !

Cette correction a probablement résolu une partie du problème, mais ça ne suffisait pas : je continuais de ne pas pouvoir accéder à http://localhost (même réponse : 403).

M'inspirant de l'idée d'Iann, je me suis mis à modifier les droits d'accès à tous les fichiers sous www, y compris www lui-même ... et c'est là que finalement la situation s'est débloquée !!!!
Les droits d'accès étaient trop restreints.
Me reste à répercuter les modifications de droits d'accès sur tous les fichiers ... ce sera long mais enfin, la solution a finalement été trouvée.

Bref c'est résolu. Merci à tous.

Hors ligne

#13 Le 12/10/2015, à 08:11

jplemoine

Re : Installation d'Apache : ça semble marcher, mais en réalité non !

Garrulix a écrit :

ce sera long .

Ah bon ? Il te manquerait encore une info valable pour tous les Unix/Linux (et non spécifique à Ubuntu) qui, entre nous soit dit, n'est pour rien dans ton problème...
Il existe un paramètre (-R) qui, bien employé, peut te permettre de modifier les droits de tous les fichiers en 1 seule fois.....


Membre de l'ALDIL (Association Lyonnaise pour le Développement de l'Informatique Libre)
- En pro, après 20 ans de développement, administrateur Linux / Unix depuis Avril 2019.
- En privé, sous Ubuntu-Xubuntu depuis 2009.

Hors ligne

#14 Le 12/10/2015, à 08:12

jplemoine

Re : Installation d'Apache : ça semble marcher, mais en réalité non !

D'autre part, pour tes retour : regardes cette page.
Tes retours ne sont pas lisibles...


Membre de l'ALDIL (Association Lyonnaise pour le Développement de l'Informatique Libre)
- En pro, après 20 ans de développement, administrateur Linux / Unix depuis Avril 2019.
- En privé, sous Ubuntu-Xubuntu depuis 2009.

Hors ligne

#15 Le 13/10/2015, à 00:24

Garrulix

Re : Installation d'Apache : ça semble marcher, mais en réalité non !

jplemoine a écrit :

Il existe un paramètre (-R) qui, bien employé, peut te permettre de modifier les droits de tous les fichiers en 1 seule fois.....

En effet : chmod -R (de récursif) ... de quoi rendre infiniment moins laborieuse la modification de droits d'accès parmi l'arborescence touffue d'un serveur web.

Hors ligne

#16 Le 13/10/2015, à 00:31

J5012

Re : Installation d'Apache : ça semble marcher, mais en réalité non !

mieux : l'interface graphique de gestion de fichiers à la filecommander : emelfm2
pas encore de doc dessus , mais tres pratique quand on a 1 km de owner ou de rights à modifier !

Hors ligne

#17 Le 13/10/2015, à 00:38

Garrulix

Re : Installation d'Apache : ça semble marcher, mais en réalité non !

jplemoine a écrit :

D'autre part, pour tes retour : regardes cette page.
Tes retours ne sont pas lisibles...

Ok ... C'est noté.

A part ça : j'ai déplacé var/www en srv/www
Pour que l'opération fonctionne j'ai modifié DocumentRoot à la fois dans /etc/apache2/apache2.conf et dans /etc/apache2/sites-enabled/000-default.conf
... respectivement :
Directory /srv/www/localhost/
DocumentRoot /srv/www/localhost

... où "locahost" est le nouveau nom que je donne, pour plus de clarté, à "html".
(S'agissant essentiellement de pages PHP ça n'a d'ailleurs aucun sens d'appeler html ce répertoire)

J'avais envie de déménager aussi /etc/apache2 vers /srv ... Finalement je me suis contenté de créer un répertoire /srv/etc-apache2 où j'ai créé des liens physiques vers les deux fichiers sus-mentionnés. De quoi me faciliter le travail de sauvegarde.

Hors ligne

#18 Le 13/10/2015, à 00:43

Garrulix

Re : Installation d'Apache : ça semble marcher, mais en réalité non !

J5012 a écrit :

mieux : l'interface graphique de gestion de fichiers à la filecommander : emelfm2
pas encore de doc dessus , mais tres pratique quand on a 1 km de owner ou de rights à modifier !

Je l'ai installé. Sympa en effet. Me reste à comparer (je suis nouveau sur Linux) avec le Midnight Commander mais c'est sûr que l'interface est sympa, genre FileZilla, et que ça doit faciliter le mouvement de fichiers d'un répertoire à un autre.

Hors ligne

#19 Le 13/10/2015, à 00:48

Alex10336

Re : Installation d'Apache : ça semble marcher, mais en réalité non !

Garrulix a écrit :
lann a écrit :
Garulix a écrit :

... et alors ?
Il n'y a aucun fichier caché.

C'était pour connaître les droits sur les fichiers

/var# ls -laht /var/www
total 72K
drwxr-xr-x 14 root     root     4,0K oct.  11 19:42 ../
drwx------  6 zorglub machin 4,0K oct.  11 19:36 ./
drwx------ 16 zorglub machin 4,0K oct.  11 19:27 html/
drwx------ 11 zorglub machin 4,0K juin   9  2014 projets/
drwx------ 12 zorglub machin 4,0K juin   9  2014 sujets/

"projets/" et "sujets/" sont des répertoires que j'ai créés pour y placer des fichiers qui sont "inclus" (appels à include ou require) dans des fichiers PHP tout en étant hors de la racine (qui est html/) de façon à rester hors d'atteinte.

Les droits de ce dossier donne forcément un 403. apache ne tourne sûrement pas avec le compte "zorglub"

Garrulix a écrit :
Rufus T. Firefly a écrit :

Salut,

De toutes façons le répertoire racine peut être défini n'importe où !
Il suffit de l'indiquer ici, dans /etc/apache2/apache2.conf
C'est vers la ligne 150 .............

1ère modification : faite. Modifié apache2/apache2.conf pour remplacer /var/www par /var/www/html

2ème modification : je n'ai pas dû la faire. C'était déjà, à ce niveau, /var/www/html

Comme quoi ces deux fichiers se contredisaient.

Non, bien au contraire. C'est clairement voulut. Notamment sur le principe de sécurité des "conf.php" stocké en dehors de l'espace publique.
Edit: précision: la configuration sur /var/www donne une configuration de base pour lui même et récursivement.
----
Et pour finir, faire des liens symbolique sur les fichiers de configuration d'apache est sans doute la pire des idées.

Dernière modification par Alex10336 (Le 13/10/2015, à 01:00)


« On ne répond pas à une question par une autre question. » (moi ;-) )

Hors ligne

#20 Le 26/10/2015, à 00:37

Garrulix

Re : Installation d'Apache : ça semble marcher, mais en réalité non !

Alex10336 a écrit :

Et pour finir, faire des liens symbolique sur les fichiers de configuration d'apache est sans doute la pire des idées.

1 - J'ai dit "liens physiques" ... NON "liens symboliques".
2 - Je n'ai eu aucun problème : ça marche. Je n'ai cessé d'intervenir sur les fichiers tels que ~/.bashrc à travers des liens physiques que je leur ai donnés, sans rencontrer la moindre difficulté. Et ça m'a facilité les sauvegardes. Ce dont je suis loin de me plaindre à présent que ce PC connaît quelques difficultés d'accès.
3 - "zorglub" et "machin" c'étaient des mots remplaçant ce que je souhaitais dissimuler par mesure de sécurité.
4 - Le problème n'était pas dû à "zorglub" et il est à signaler qu'il a été résolu comme c'est dit sur cette page.
.

Hors ligne