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 28/10/2013, à 15:18

cypher_ubuntu

[RESOLU]problème virtualhost depuis upgrade de Saucy

Bonjour

Après avoir upgradé vers Saucy depuis Raring, je constate que mes sites locaux sont maintenant affichés avec un message d'apache "It works".

Pour info, ces sites ont un fichier unique de configuration httpd.conf et contient des directives indépendantes des autres
Je sais que ce n'est pas la bonne solution et qu'il fallait créer chaque conf dans des sites availables.
Pour l'instant, je garde ma solution car elle est unique, ce qui me permet de sauvegarder rapidement.

voici

ServerName localhost
#NameVirtualHost *

<VirtualHost 127.0.0.2>
        ServerName current.symfony.dev
        DocumentRoot "/home/cyphos/projets/symfony-current"
        <Directory "/home/cyphos/projets/symfony-current/">
                AllowOverride All
                Allow from All
        </Directory>
        ErrorLog /var/log/apache2/current.symfony_error.log
        CustomLog /var/log/apache2/current.symfony_access.log combined
</VirtualHost>


<VirtualHost 127.0.0.3>
        ServerName beta.symfony.dev
        DocumentRoot "/home/cyphos/projets/symfony-beta"
        <Directory "/home/cyphos/projets/symfony-beta/">
                AllowOverride All
                Allow from All
        </Directory>
        ErrorLog /var/log/apache2/beta.symfony_error.log
        CustomLog /var/log/apache2/beta.symfony_access.log combined
</VirtualHost>
                                                                         

voici

127.0.0.1       localhost
127.0.1.1       ACER-ASPIRE-ONE-150
127.0.0.2       current.symfony.dev
127.0.0.3       beta.symfony.dev
127.0.0.4       test.symfony.dev

# The following lines are desirable for IPv6 capable hosts
::1     ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters                                                                                                   
cyphos@ACER-ASPIRE-ONE-150:~$ apache2 -v
Server version: Apache/2.4.6 (Ubuntu)
Server built:   Aug  9 2013 14:31:04

Bref, j'aimerais comprendre pourquoi cela ne fonctionne plus comme auparavant.

Merci beaucoup de votre attention.

Dernière modification par cypher_ubuntu (Le 29/10/2013, à 14:59)

Hors ligne

#2 Le 28/10/2013, à 16:03

bruno

Re : [RESOLU]problème virtualhost depuis upgrade de Saucy

cypher_ubuntu a écrit :

Bonjour
Pour info, ces sites ont un fichier unique de configuration httpd.conf et contient des directives indépendantes des autres
Je sais que ce n'est pas la bonne solution et qu'il fallait créer chaque conf dans des sites availables.

Pourtant je t'invite vivement à abandonner httpd.conf qui est obsolète et à utiliser les virtual Hosts. Ce n'est pas plus compliqué, c'est plus souple et mieux organisé, ce n'est pas plus difficile à sauvegarder et la modification sera très vite faite.

La configuration globale d'Apache se fait dans le fichier /etc/apache2/apache2.conf. Si ce fichier ne contient pas de directive :

Include httpd.conf

ta configuration est tous simplement ignorée et quelque soit l'IP/nom de domaine que tu utilise c'est l'hôte virtuel par défaut qui est pris en compte : /etc/site-enabled/000-defaut.conf

Hors ligne

#3 Le 28/10/2013, à 17:14

tiramiseb

Re : [RESOLU]problème virtualhost depuis upgrade de Saucy

Salut,

Concernant la configuration d'Apache2, tu peux faire quelque chose d'intermédiaire en mettant tes différents sites dans un seul fichier de /etc/apache2/sites-available.

Concernant la supposition de bruno ("Include httpd.conf" qui aurait disparu), je ne vois en effet pas d'autre explication rationnelle.

Regarde peut-être les logs pour voir où ta requête arrive, en terme de virtualhosts.

bruno a écrit :

Pourtant je t'invite vivement à [...] utiliser les virtual Hosts.

Il utilise déjà les VirtualHosts, il les met juste dans le fichier httpd.conf... smile

Hors ligne

#4 Le 29/10/2013, à 08:48

cypher_ubuntu

Re : [RESOLU]problème virtualhost depuis upgrade de Saucy

bonjour

ok
j'ai lu rapidement quelques articles et je vais modifier la configuration .

merci à vous.
je vous le dirais rapidement si ca fonctionne

merci quand même

Hors ligne

#5 Le 29/10/2013, à 14:01

cypher_ubuntu

Re : [RESOLU]problème virtualhost depuis upgrade de Saucy

Me revoila

Je suis un peu perdu dans la configuration
qu'est ce que j'ai pu oublier ?

voici ce que j'ai fait

cyphos@ACER-ASPIRE-ONE-150:~/projets$ ls -ll beta/
total 4
-rw-r--r-- 1 cyphos cyphos 52 oct.  29 11:11 index.php
127.0.0.5       www.beta.dev

/etc/apache2/sites-availables/beta.conf

<VirtualHost 127.0.0.5:80>
        ServerAdmin beta@localhost
        ServerName www.beta.dev
        ServerAlias www.beta.dev

        DocumentRoot /home/cyphos/projets/beta
        <Directory />
                Options FollowSymLinks
                AllowOverride None
        </Directory>
        <Directory /home/cyphos/projets/beta>
                Options Indexes FollowSymLinks MultiViews
                AllowOverride None
                Order allow,deny
                allow from all
        </Directory>

        ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
        <Directory "/usr/lib/cgi-bin">
                AllowOverride None
                Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
                Order allow,deny
                Allow from all
        </Directory>

        ErrorLog /var/log/apache2/error.log

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

puis activer ce site
a2ensite beta.conf

cyphos@ACER-ASPIRE-ONE-150:~/projets$ ls -ll /etc/apache2/sites-enabled/
total 0
lrwxrwxrwx 1 root root 28 oct.  29 11:18 beta.conf -> ../sites-available/beta.conf

puis redemarrer le service apache2

le message d'erreur m'affiche ci-dessous

Forbidden

You don't have permission to access / on this server.

Hors ligne

#6 Le 29/10/2013, à 14:02

tiramiseb

Re : [RESOLU]problème virtualhost depuis upgrade de Saucy

L'utilisateur www-data a-t-il la permission de lire /home/cyphos/projets/beta ?

Hors ligne

#7 Le 29/10/2013, à 14:10

cypher_ubuntu

Re : [RESOLU]problème virtualhost depuis upgrade de Saucy

où vous avez vu cet utilisateur?

Hors ligne

#8 Le 29/10/2013, à 14:12

tiramiseb

Re : [RESOLU]problème virtualhost depuis upgrade de Saucy

www-data c'est l'utilisateur sous lequel tourne Apache.

Hors ligne

#9 Le 29/10/2013, à 14:12

tiramiseb

Re : [RESOLU]problème virtualhost depuis upgrade de Saucy

Et de manière générale, pour mieux comprendre les problèmes, plutôt que de se limiter au message affiche dans le navigateur il est utile de regarder les fichiers de log (/var/log/apache2) !

Hors ligne

#10 Le 29/10/2013, à 14:16

cypher_ubuntu

Re : [RESOLU]problème virtualhost depuis upgrade de Saucy

je ne sais pas si l'utilisateur a la permission de lire mon projet

voici les logs

[Tue Oct 29 14:15:15.659615 2013] [authz_core:error] [pid 5794] [client 127.0.0.1:51498] AH01630: client denied by server configuration: /home/cyphos/projets/beta/

Hors ligne

#11 Le 29/10/2013, à 14:24

tiramiseb

Re : [RESOLU]problème virtualhost depuis upgrade de Saucy

La seule chose inhabituelle que je vois dans ta configuration d'Apache, c'est que tu as mis une directive Allow et pas de directive Deny ni Order... Essaie avec quelque chose de plus habituel...

Hors ligne

#12 Le 29/10/2013, à 14:33

cypher_ubuntu

Re : [RESOLU]problème virtualhost depuis upgrade de Saucy

c'est parce que j'ai recopié l'exemple du tutoriel
tutoriel

Hors ligne

#13 Le 29/10/2013, à 14:38

bruno

Re : [RESOLU]problème virtualhost depuis upgrade de Saucy

Tu es sous Apache 2.4 les directives deny/allow sont obsolètes (mais fonctionnent toujours). Voir ma réponse dans ce fil.. Ce n'est pas ce qui te bloque pour l'instant.

Il faut que tu édites ton fichier /etc/apache2/apache2.conf et que tu y ajoutes :

<Directory /home/cyphos/projets>
	Options Indexes FollowSymLinks
	AllowOverride None
	Require all granted
</Directory>

pour autoriser l'accès aux dossiers sous  /home/cyphos/projets car dans ce fichier seul l'accès au dossier /var/www est autorisé.

Hors ligne

#14 Le 29/10/2013, à 14:44

tiramiseb

Re : [RESOLU]problème virtualhost depuis upgrade de Saucy

sous Apache 2.4 les directives deny/allow sont obsolètes

Tiens, j'aurai appris quelque chose aujourd'hui smile

Il faut que tu édites ton fichier /etc/apache2/apache2.conf

Ce fichier n'est-il pas à ne pas modifier, autant que possible ?

dans ce fichier seul l'accès au dossier /var/www est autorisé.

Hu !? Et quid de /srv/www, qui est un bien meilleur usage ?
As-tu une référence, quelque chose ? Ça m'intrigue...

Hors ligne

#15 Le 29/10/2013, à 14:49

cypher_ubuntu

Re : [RESOLU]problème virtualhost depuis upgrade de Saucy

après modification d'apache2.conf, cela fonctionne enfin

sans toucher aux directives deny/allow

mais suite au article sur l'upgrade vers la 2.4,
je vais tester cette directive Require all granted

Hors ligne

#16 Le 29/10/2013, à 14:59

cypher_ubuntu

Re : [RESOLU]problème virtualhost depuis upgrade de Saucy

ca fonctionne aussi avec cette nouvelle directive

voilà
je remercie beaucoup tiramiseb

je mets en résolu ce post

Hors ligne

#17 Le 29/10/2013, à 15:15

bruno

Re : [RESOLU]problème virtualhost depuis upgrade de Saucy

@tiramiseb : la référence c'est le fichier de configuration par défaut fourni par ubuntu 13.10 (et Debian Sid) et le contenu /usr/share/doc/apache2 (notamment NEWS.Debian et il ya me un script Perl pour migrer les anciens vhosts)
Il est auto-documenté sur ce point :

# 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.


Effectivement on peut vouloir éviter de toucher ce fichier pour éviter que les personnalisations ne soient écrasées par une mise à jour du paquet apache2. Mais normalement le gestionnaire de paquet est poli et aimable et te demande ce que tu veux faire lorsqu'il détecte qu'un tel fichier à été modifier (remplacer, conserver, afficher le diff). wink

Le bout de configuration que j'ai donné aurait donc pu être placé ailleurs : par exemple dans /etc/apache2/conf-available/security.conf ou directement dans les fichiers des hôtes virtuels (mais comme  il y a plusieurs sites dans le me dossier, c'est plus simple d'autoriser l'accès dans un fichier de configuration global).

Hors ligne

#18 Le 29/10/2013, à 15:21

tiramiseb

Re : [RESOLU]problème virtualhost depuis upgrade de Saucy

Merci smile
Je le saurai lorsque je serai confronté à cette version (bon, vu que c'est dans les docs de Debian, j'aurais trouvé l'info facilement...).

Enfin pour ma part, j'aurais mis ça directement dans le fichier du VirtualHost concerné.

D'ailleurs es-tu sûr qu'il faut mettre une directive pour /home/cyphos/projets ? La directive pour /home/cyphos/projets/trucmachin n'est-elle pas suffisante ?
Ça m'étonne de devoir mettre une directive pour un répertoire parent, je ne vois pas la logique du fonctionnement de cette configuration que tu proposes...

Car si l'idée est qu'il faut autoriser l'accès au parent, alors si tu mets une directive pour /home/cyphos/projets afin d'autoriser /home/cyphos/projets/trucmachin, il en faut aussi une pour /home/cyphos afin d'autoriser /home/cyphos/projets et une pour /home afin d'autoriser /home/cyphos...


Menfin bon, je verrai le moment venu hein smile

Hors ligne

#19 Le 29/10/2013, à 15:37

bruno

Re : [RESOLU]problème virtualhost depuis upgrade de Saucy

tiramiseb a écrit :

D'ailleurs es-tu sûr qu'il faut mettre une directive pour /home/cyphos/projets ? La directive pour /home/cyphos/projets/trucmachin n'est-elle pas suffisante ?

Oui mais il faudra remettre une directive si un autre site est sous /home/cyphos/projets/bidule. Là on autorise directement tout ce qui est sous  /home/cyphos/projets . La logique est de ne pas avoir besoin de réécrire de directive pour les sous dossiers qui hébergent différents sites.



tiramiseb a écrit :

Car si l'idée est qu'il faut autoriser l'accès au parent, alors si tu mets une directive pour /home/cyphos/projets afin d'autoriser /home/cyphos/projets/trucmachin, il en faut aussi une pour /home/cyphos afin d'autoriser /home/cyphos/projets et une pour /home afin d'autoriser /home/cyphos...

Non c'est inutile, en tout cas cela marche très bien sur une machine où j'ai plusieurs sites  sous /srv/www/ qui sont accessibles grâce au me type de drirective sur /srv/www

Hors ligne

#20 Le 29/10/2013, à 15:42

tiramiseb

Re : [RESOLU]problème virtualhost depuis upgrade de Saucy

en tout cas cela marche très bien sur une machine où j'ai plusieurs sites  sous /srv/www/ qui sont accessibles grâce au me type de drirective sur /srv/www

Oui, mais as-tu mis aussi une directive dans le virtualhost de chaque site ?

Hors ligne

#21 Le 29/10/2013, à 16:14

bruno

Re : [RESOLU]problème virtualhost depuis upgrade de Saucy

Non c'est inutile sauf si je veux préciser des restrictions d'accès bien entendu. La directive générale (dans apache2.conf) avec :

Require all granted

autorise l'accès à tous à tous les sites sous /srv/www.
Si je veux restreindre l'accès à un site en développement à un seul hôte par exemple je met dans le fichier de configuration de l'hôte virtuel :

    <Directory /srv/www/projet1-dev/>
        Require ip w.x.y.z.
    </Directory>

voir : http://httpd.apache.org/docs/2.4/fr/mod … ml#require

Maintenant d'un point de vue sécurité je suis conscient que ce n'est pas une bonne pratique puisque j'autorise par défaut tout le contenu d'un dossier et que j'applique éventuellement des restrictions sur les sous-dossiers. Je devrais plutôt faire l'inverse : garder l'interdiction globale, et autoriser spécifiquement  chaque dossier pour chaque hôte virtuel comme tu le suggérait.

Hors ligne

#22 Le 29/10/2013, à 16:17

tiramiseb

Re : [RESOLU]problème virtualhost depuis upgrade de Saucy

Ok, d'accord. Là c'est logique smile

cypher_ubuntu a mis des "Allow machintruc" dans les virtualhosts, il a eu deux possibilités :
- remplacer ce "Allow machintruc" par un "Require bidulechose"
- supprimer les "Allow machintruc" des virtualhosts et mettre un "Require bidulechose" global

Hors ligne