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 09/09/2007, à 11:42

juliano

[Résolu]Changement du repertoire /var/www avec Apache2

Bonjour,
J'ai suivi avec une grande exactitude le tuto d'installation d'une solution LAMP http://doc.ubuntu-fr.org/lamp. Tout se passe bien à toutes les étapes sauf que...
Je n'arrive pas à changer l'emplacement de /var/www vers /home/user/monsite.
J'ai essayé avec les deux méthodes :
- avec le lien symbolique :

vous pouvez voir un nouveau répertoire qui porte le nom « mon_site »

je ne vois rien de nouveau....
- avec l'alias :

si vous tentez d'accéder à http://localhost/mon_site alors vous vous retrouverez dans "/home/votre_identifiant/répertoire_pour_votre_site".

J'ai une erreur "404 not found"...

Est-ce que quelqu'un a déjà connu un tel problème?
Je suis sous Ubuntu Fesity.

Merci de votre aide

Dernière modification par juliano (Le 21/09/2007, à 17:17)

Hors ligne

#2 Le 09/09/2007, à 22:39

Hadesis

Re : [Résolu]Changement du repertoire /var/www avec Apache2

apache ou apache2 ???


HADESIS
Enjoy the life...

Hors ligne

#3 Le 09/09/2007, à 23:27

juliano

Re : [Résolu]Changement du repertoire /var/www avec Apache2

apache2...
Je vais peut-être dire une connerie mais c'est juste une question de version non??

Hors ligne

#4 Le 09/09/2007, à 23:41

Hadesis

Re : [Résolu]Changement du repertoire /var/www avec Apache2

Disons que dans apache2, tu dois modifier le fichier virtualhost de ton site, et y spécifier les bons répertoires.

Voilà un exemple pour /etc/apache2/sites-available/site-toto.fr.:

NameVirtualHost *:80
<VirtualHost *>
# Basic Settings
        ServerAdmin toto@truc.fr
        ServerName  www.toto.fr:80
        DocumentRoot /home/www/toto.fr/ # Ton repertoire principal (contient index.htm)
        AddDefaultCharset utf-8
        ServerSignature off

# Log Settings
        ErrorLog /var/log/apache2/error.log
        # Possible values include: debug, info, notice, warn, error, crit,
        # alert, emerg.
        LogLevel notice
        CustomLog /var/log/apache2/access.log combined

<Directory /home/www/toto.fr/> # Ton repertoire principal (contient index.htm)
         Options FollowSymLinks
         AllowOverride None
         Order allow,deny
         Allow from all
         #Deny from All
</Directory>
</VirtualHost>

Pour le reste, tu redéclares un "Directory" chaque fois que tu veux modifier les propriétés d'accés d'un sous répertoire par exemple, ou que tu veux rajouter répertoire qui ne fait pas parti des sous répertoires du répertoire principal.

Voilà, j'espère avoir été clair, bon courage.


HADESIS
Enjoy the life...

Hors ligne

#5 Le 11/09/2007, à 15:05

juliano

Re : [Résolu]Changement du repertoire /var/www avec Apache2

Merci Hadesis pour ton aide.
malheureusement, il doit y avoir des trucs que j'ai pas bien compris... Ca marche toujours pas.

/etc/apache2/sites-available/site-toto.fr

Dois-je créer ce nouveau fichier "site-toto.fr" ou dois-je modifier le fichier "default" qui est seul pour l'instant dans le dossier /etc/apache2/sites-available/?

Hors ligne

#6 Le 11/09/2007, à 21:44

Hadesis

Re : [Résolu]Changement du repertoire /var/www avec Apache2

Site-toto.fr est un exemple, default n'est que le nom du site par default créé par apache. Si tu en modifies la config pour faire tourner ton site, ça fonctionne aussi. Cela change uniquement le lien symbolique dans /etc/apache2/sites-enabled.

En gros, tu modifies ta config dans ton fichier qui se trouve dans /etc/apache2/sites-available.
Et si tu en as modifié le nom, tu crées un lien symbolique dessus en faisant soit : ln -s cible-du-lien nom-du-lien, soit : a2ensite nom-du-fichier-de-conf-de-ton-site.

Dernière modification par Hadesis (Le 11/09/2007, à 21:45)


HADESIS
Enjoy the life...

Hors ligne

#7 Le 12/09/2007, à 15:56

juliano

Re : [Résolu]Changement du repertoire /var/www avec Apache2

Merci Hadesis pour ton aide, mais je dois être fatigué, car j'ai vraiment du mal....

En gros, tu modifies ta config dans ton fichier qui se trouve dans /etc/apache2/sites-available.

Dans ce dossier je n'ai au départ que le fichier "default". J'en conclue que c'est lui qui gère la config d'apache. Si ensuite je crée un fichier  "site-toto.fr", il semble que ça ne change pas du tout le comportement d'apache (il utilise toujours default).
J'ai donc complètement changé default, j'y ai mis ce que tu me proposais (en personnalisant les chemins), je n'ai pas changé le nom. J'ai alors une erreur 403 forbidden...
J'ai vérifié, à la racine de mon dossier, je n'ai pas de index.htm, mais index.php seulement (je travaille un vieux site sous spip 1.7.2)....

Hors ligne

#8 Le 12/09/2007, à 16:42

Hadesis

Re : [Résolu]Changement du repertoire /var/www avec Apache2

OK, je vais reprendre ça autremenent :

/etc/apache2/sites-available contient toutes les configs de tes sites webs.
default en est un, toto.fr un autre.
Quand tu modifies toto.fr, tu modifies la configuration du site toto.fr, pas celle de default.

/etc/apache2/sites-enabled contient lui les liens symboliques vers les fichiers de configuration des sites activés sur ton serveur.

Par exemple, si tu souhaites ajouter un site (truc.com), tu crées un fichier de configuration (truc.com) dans
/etc/apache2/sites-available, et après tu executes la commande suivante : sudo a2ensite truc.com. Cela a pour effet de créer le lien symbolique dans /etc/apache2/sites-enabled, et donc d'activer ton site.

Dans ton cas, tu modifies default, tu donnes les bons droits à ton répertoire www et à ses sous répertoires, et ça devrait suffir dans un premier temps pour comprendre.

Voilà, j'espère avoir été plus clair.

Dernière modification par Hadesis (Le 12/09/2007, à 16:43)


HADESIS
Enjoy the life...

Hors ligne

#9 Le 12/09/2007, à 16:53

juliano

Re : [Résolu]Changement du repertoire /var/www avec Apache2

Merci Hadesis, tu  as été très clair effectivement.
Je vais essayer très rapidement. Toutefois, quelquechose m'intrigue... Dans /home/username/monsite quel est le répertoire dans lequel je n'ai pas de droits et qui est responsable de l'erreur 403?

Hors ligne

#10 Le 12/09/2007, à 23:51

Hadesis

Re : [Résolu]Changement du repertoire /var/www avec Apache2

NameVirtualHost *:80
<VirtualHost *>
# Basic Settings
        ServerAdmin toto@truc.fr
        ServerName  www.toto.fr:80
        DocumentRoot /home/username/monsite/ # Ton repertoire principal (contient index.htm)
        AddDefaultCharset utf-8
        ServerSignature off

# Log Settings
        ErrorLog /var/log/apache2/error.log
        # Possible values include: debug, info, notice, warn, error, crit,
        # alert, emerg.
        LogLevel notice
        CustomLog /var/log/apache2/access.log combined

<Directory /home/username/monsite/> # Ton repertoire principal (contient index.htm)
         Options FollowSymLinks
         AllowOverride None
         Order allow,deny
         Allow from all
         #Deny from All
</Directory>
</VirtualHost>

Déjà, tu doit avoir quelque chose dans ce genre là comme fichier de conf.

Ensuite, l'erreur 403 apparaît soit parce qu'un fichier de ton arboressence ne peut être traversé, soit parce que le dernier dossier n'est pas accessible en lecture à apache.

Vérifie que ton /etc/apache2.conf contient ces 2 lignes.

User www-data
Group www-data

Et que le groupe et l'utilisateur existent sur ta machine. (pour le voir, /etc/passwd, et /etc/groups).

Si ils existent, donne les droits en lecture au moins, soit au goupe www-data, soit à l'utilisateur ww-data sur le répertoire de ton site, en vérifiant que l'exécution des répertoires parents est possible. Sinon, tu utilises les commandes suivantes pour modifier les propriétaires et les droits de ces répertoires.

chown -R utilisateur_à_attribuer:groupe_à_attribuer répertoire_cible

et

chmod -R droit_(ex:750) répertoire_cible

L'option -R implique la récursivité de la commande.

Voilà voilà, j'espère t'avoir aidé. Bon courage.


HADESIS
Enjoy the life...

Hors ligne

#11 Le 21/09/2007, à 15:13

juliano

Re : [Résolu]Changement du repertoire /var/www avec Apache2

Merci Hadesis pour ta patience.
Je n'ai pas trop eu le temps de bidouiller cette semaine. Je m'y remets.

J'ai vérifié, j'ai bien

User www-data
Group www-data

dans mon fichier /etc/apache2/apache2.conf (et non /etc/apache2, mais je pense que tu as fais une erreur de frappe).

Et que le groupe et l'utilisateur existent sur ta machine. (pour le voir, /etc/passwd, et /etc/groups).

Je ne sais pas trop bien ce que je dois voir dans ces fichiers....


par contre, je ne comprends pas très bien pourquoi, /home/utilisateur/www/ necessiterait des autorisations....

Hors ligne

#12 Le 21/09/2007, à 15:57

foobar47

Re : [Résolu]Changement du repertoire /var/www avec Apache2

juliano a écrit :

Et que le groupe et l'utilisateur existent sur ta machine. (pour le voir, /etc/passwd, et /etc/groups).

Je ne sais pas trop bien ce que je dois voir dans ces fichiers....

par contre, je ne comprends pas très bien pourquoi, /home/utilisateur/www/ nécessiterait des autorisations....

Tu dois voir la liste des utilisateurs de ton système...

Pourquoi les autorisations ? Parce que, par défaut, seul ton user est autorisé à accéder aux dossier de /home/user/
Donc, si tu n'autorises pas explicitement l'utilisateur apache, soit www-data, à accéder à ces dossiers, tu auras une erreur 403... smile

Hors ligne

#13 Le 21/09/2007, à 17:02

juliano

Re : [Résolu]Changement du repertoire /var/www avec Apache2

Alors dans /etc/password j'ai

www-data:x:33:33:www-data:/var/www:/bin/sh

et dans /etc/groups

www-data:x:33:

J'en conclue que ça marche, je fais donc les manips suivantes avec

chmod -R 750 répertoire_cible

et là ça marche effectivement.
par contre, je me rends compte que je comprendspas du tout ce que signifient les droits 750. Un petit man chmod ne m'avance pas plus. Quelqu'un pourrait'il m'aider?

Merci en tout cas, j'ai fait un grand pas aujourd'hui grâce à vous.

Hors ligne

#14 Le 21/09/2007, à 17:12

foobar47

Re : [Résolu]Changement du repertoire /var/www avec Apache2

Les droits unix :

l'option -R signifie Récursif, ie, s'étend à tout ce qui se trouve en dessous de répertoire_cible.

rwx
read = r = 4
write = w = 2
execute = x = 1

u|g|o = user|group|other

exemples :
7|7|7 = rwx|rwx|rwx
7|5|0 = rwx|r-x|---

Ce n'est ni plus ni moins qu'une addition.

J'espère avoir été clair smile

Hors ligne

#15 Le 21/09/2007, à 17:17

juliano

Re : [Résolu]Changement du repertoire /var/www avec Apache2

Super merci beaucoup!

Je passe le post en résolu

Hors ligne

#16 Le 21/09/2007, à 17:21

SamheG

Re : [Résolu]Changement du repertoire /var/www avec Apache2

750 signifie :
- droits de lecture, écriture et execution pour le propriétaire
- droits de lecture et d'execution pour le groupe propriétaire
- aucun droit pour les autres

Pour en savoir d'avantage regarde ceci et celà

Edit : Mega grillé ! C'est ça quand on commence à répondre, qu'on bosse un peu et qu'on finit de répondre ! big_smile

Hors ligne

#17 Le 22/09/2007, à 12:50

juliano

Re : [Résolu]Changement du repertoire /var/www avec Apache2

Bon, j'ai décidement du aml avec cette solution LAMP et j'ai peut-être édité le titre trop tôt.
J'ai maintenant un problème avec MySql, mais qui est tout à fait lié aux problèmes prcédents si j'en croit le message d'erreur:

1045 Access denied for user 'www-data'@'localhost' (using password: NO)

Je travaille avec un site sous SPIP 1.7.2, et j'ai suivi avec rigeur le tuto LAMP http://doc.ubuntu-fr.org/lamp. Y a t'il d'autre autorisations à faire pour www-data?

Merci de votre aide

Hors ligne