web-dev-qa-db-fra.com

Comment donner à Apache l'accès à un partage samba?

J'utilise un serveur Web et le dossier public_html se trouve sur un lecteur réseau Windows partagé par samba sur Ubuntu Server 10.04.

J'ai Apache2 VH configuré pour pointer vers le dossier et cela fonctionne très bien. Cependant, lorsque mon installation Drupal 6 tente de créer ses fichiers par défaut, elle ne peut pas écrire aux emplacements requis.

Maintenant, parce que ce n’est qu’une machine de développement; J'ai ajouté www-data utilisateur et groupe à la visudo avec ALL=(ALL) ALL

J'ai également modifié le fichier httpd.conf pour obtenir les éléments suivants:

<Directory /media/samba>
      Order Allow,Deny
      Allow from all
</Directory>

Lorsque je change le nom d'utilisateur envvars en nom d'utilisateur avec les privilèges d'administrateur, cela fonctionne très bien. Dois-je faire quelque chose avec chmod pour que www-data fonctionne?

5
Kevin

Vous devez modifier votre configuration de montage samba afin d'autoriser l'utilisateur et le groupe www-data à y écrire. Vous pouvez ou non avoir la possibilité de définir des autorisations de répertoire spécifiques, mais dans le cas contraire, vous devrez définir l'accès en écriture au lecteur entier (ce qui est mauvais pour la sécurité).

Je conseillerais personnellement d’utiliser nfs au lieu des partages samba pour le stockage en réseau et l’utilisation d’ext3 ou d’autres systèmes de fichiers complets.

http://www.cyberciti.biz/tips/how-do-i-set-permissions-to-samba-shares.html

https://help.ubuntu.com/community/Samba/SambaClientGuide

http://www.mattvanstone.com/2006/06/automatically_mounting_smb_sha/