Eu estou tentando criar um ambiente de desenvolvimento em minha máquina Ubuntu de 64 bits 12.04, e eu estava tendo o pior tempo para fazer o virtualhosts funcionar. Eu finalmente descobri qual era o problema, mas não consigo entender realmente.
Eu defino a raiz do documento para meus virtualhosts estar em meu diretório pessoal - a saber:
/ home / robert / Dropbox / www / pessoaville
Quando vou a www.personvillepress2.com no navegador, obtenho
Proibido
Você não tem permissão para acessar / neste servidor.
Apache / 2.2.22 (Ubuntu) Server em www.personvillepress2.com Port 80
Nos logs, vejo
[sáb Jun 16 09:55:25 2012] [crit] [cliente 127.0.0.1] (13) Permissão negada: /home/robert/Dropbox/.htaccess pcfg_openfile: não foi possível verificar o arquivo htaccess, garantir é legível
Mova meu diretório raiz de documentos para
/ home / robert / www / personville
modifique as configurações do virtualhost de acordo, recarregue e, de repente, tudo funciona! Isso é ruim porque eu quero manter toda a minha fonte dentro da minha pasta Dropbox para backup.
Minhas permissões para a pasta dropbox parecem normais:
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
Sem links simbólicos ou permissões raramente rigorosas. Além disso, não vejo nenhum problema de .htaccess que possa causar problemas (e por que o apache2 se importaria com os problemas de permissão do .htaccess acima da raiz do documento?)
Agradeço qualquer idéia de como resolver esse problema de uma forma que me permita manter os arquivos de origem no Dropbox.
O arquivo virtualhost não funcional está abaixo:
<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>
Atualização: vejo que outras pessoas já encontraram esse problema antes. link
Eu não estou realmente preocupado com segurança aqui - isso é uma caixa de desenvolvimento; Estou preocupado principalmente com backup e acesso de outras máquinas. Eu estou pensando em usar o git para implantar em um site ao vivo, então tudo que eu quero é uma forma de backup dos meus dados locais. Alguém pode sugerir uma solução? Obrigado.