Hosts virtuais Apache2 com o Ubuntu 15.10 mudando o DocumentRoot

0

Background - Acabei de comprar um laptop Ubuntu 15.10 (System76) e migrar do Windows 7 (SIM! - realmente aproveite a velocidade de inicialização e a velocidade do aplicativo). No Windows, eu tinha uma pilha Apache, MySQL e PHP e um número de hosts Apache Virtual onde o DocumentRoot apontava para um diretório dentro de um diretório. Eu desenvolvia o software php e Java para diferentes aplicações e testava-o naqueles hosts virtuais, por exemplo. java_projects, php_ps_projects.

Acabei de colocar a pilha LAMP funcionando no laptop e nos hosts virtuais quando eles estão localizados em /var/www

Tentei apontar DocumentRoot /home/roy/websites/php_js_projects e modifiquei <Directory /var/www/> para apontar para <Directory /home/roy/websites//> com os mesmos atributos, mas obtenho:

"Forbidden You don't have permission to access / on this server.
Apache/2.4.12 (Ubuntu) Server at cnrepperson_com Port 80"

Eu fiz uma pesquisa no google e não vi nenhuma informação sobre como fazer isso funcionar ou se possível.

Isso é possível e, em caso afirmativo, quais são as etapas necessárias?

Espero que isso funcione como eu odiaria ter que desenvolver e copiar para testar o local.

Obrigado antecipadamente, Roy

    
por roy epperson 16.12.2015 / 21:39

1 resposta

0

Você precisará garantir que o usuário / grupo virtual que está executando o apache2 ( www-data ) tenha pelo menos acesso de verificação (x) a todos os diretórios no caminho. Por exemplo, os seguintes comandos (como root):

# chmod o+x /home /home/roy /home/roy/websites
# chgrp -R www-data /home/roy/websites/php_js_projects

O último comando fará com que todos os arquivos nessa árvore de diretórios estejam no grupo www-data , que é o grupo do apache2. Naturalmente, todos os arquivos publicados também precisam ser acessíveis em grupo.

Outra forma, que geralmente é melhor, é adicionar o usuário roy ao grupo www-data e, em seguida, configurá-lo para manter os arquivos publicados em algum lugar abaixo de /var/www , com um link de roy's diretório inicial. Dessa forma, você tem uma separação mais clara entre arquivos "privados" e "públicos".

    
por Ralph Rönnquist 16.12.2015 / 22:49