J'essaie de créer un environnement de développement sur ma machine Ubuntu 12.04 64 bits, et j'ai eu beaucoup de mal à faire fonctionner les hôtes virtuels. J'ai finalement trouvé quel était le problème, mais je n'arrive pas à le comprendre vraiment.
J'ai configuré la racine du document pour mes virtualhosts afin qu'elle soit dans mon répertoire personnel -- à savoir :
/home/robert/Dropbox/www/personville
Quand je vais sur www.personvillepress2.com dans le navigateur, j'obtiens
Interdit Vous n'avez pas la permission d'accéder à / sur ce serveur. Apache/2.2.22 (Ubuntu) Serveur à www.personvillepress2.com Port 80
Dans les journaux, je vois
[Sat Jun 16 09:55:25 2012] [crit] [client 127.0.0.1] (13)Permission refusée : /home/robert/Dropbox/.htaccess pcfg_openfile : impossible de vérifier le fichier htaccess, assurez-vous qu'il est lisible.
Je déplace plutôt le répertoire racine de mon document vers /home/robert/www/personville
modifier les paramètres du virtualhost en conséquence, recharger, et soudain tout fonctionne ! C'est mauvais car je veux conserver toutes mes sources dans mon dossier Dropbox pour la sauvegarde.
Mes permissions pour le dossier Dropbox semblent assez normales :
robert@kundera-linux:~/Dropbox$ ls -al
total 1036
drwx------ 29 robert robert 4096 Jun 15 09:11 .
drwxr-xr-x 60 robert robert 4096 Jun 15 21:15 ..
-rw-rw-r-- 1 robert robert 29 Jun 15 09:11 .dropbox
drwxrwxr-x 2 robert robert 262144 Jun 13 05:22 .dropbox.cache
drwxrwxr-x 5 robert robert 4096 Jun 9 00:00 www
Pas de liens symboliques ou de permissions inhabituellement strictes. De plus, je ne vois aucun problème de .htaccess qui pourrait poser des problèmes (et pourquoi apache2 se soucierait-il de problèmes de permission de .htaccess au-dessus de la racine du document ?)
J'apprécie toute idée sur la façon de résoudre ce problème d'une manière qui me permette de conserver les fichiers sources dans Dropbox.
Le fichier virtualhost qui ne fonctionne pas est ci-dessous :
<VirtualHost *:80>
ServerAdmin webmaster@localhost
ServerName personvillepress2.com
ServerAlias www.personvillepress2.com
# DocumentRoot /var/www
DocumentRoot /home/robert/Dropbox/www/personville
<Directory /home/robert/Dropbox/www/personville>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
ErrorLog ${APACHE_LOG_DIR}/personvillepress2error.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
Mise à jour : je vois que d'autres personnes ont déjà rencontré ce problème. https://stackoverflow.com/questions/9460052/how-can-i-use-a-dropbox-directory-as-a-virtual-host-document-root-in-osx
Je ne suis pas vraiment préoccupé par la sécurité ici - il s'agit d'une boîte de développement ; je suis principalement préoccupé par la sauvegarde et l'accès à partir d'autres machines. Je pense utiliser git pour déployer un site en direct, donc tout ce que je veux, c'est un moyen pour mes données locales d'être sauvegardées. Quelqu'un peut-il me suggérer une solution ? Merci.