Não entendi porque estou recebendo um erro de permissão [duplicado]

0
Apache/2.4.18 (Ubuntu)
Ubuntu 16.04

Eu testei a configuração inicial, apontei meu navegador para o servidor e obtive a página normal do ubunutu. Funciona bem.

O 000-default.conf é:

<VirtualHost *:80>
    ServerAdmin webmaster@localhost
    DocumentRoot /var/www/html
</VirtualHost>

O index.html está no diretório / var / www / html e o diretório / var / www / html tem permissões definidas para 0755

Eu criei um diretório / home / utils / rails / public, possuía os utils do usuário. Eu configurei as permissões para este diretório para 0755

Eu copiei o arquivo index.html de / var / www / html para / home / utils / rails / public

Eu então modifiquei o /etc/apache2/sites-available/000-default.conf para o seguinte:

<VirtualHost *:80>
    ServerAdmin webmaster@localhost
    DocumentRoot /home/utils/rails/public
</VirtualHost>

Eu reiniciei o apache2 e apontei o navegador para o local, mas desta vez eu peguei o

Forbidden
You don't have permission to access / on this server

Se eu inverter o procedimento e alterar o DocumentRoot de volta para / var / www / html, tudo funcionará bem.

O que estou fazendo de errado?

namei -lx /home/utils/rails/public
f: /home/utils/rails/public
Drwxr-xr-x root  root  /
drwxr-xr-x root  root  home
drwxr-xr-x utils utils utils
drwxrwxr-x utils utils rails
drwxr-xr-x utils utils public
    
por EastsideDeveloper 11.10.2017 / 06:39

1 resposta

0

O seguinte resolveu o problema:

<VirtualHost *:80>
   ServerAdmin [email protected]
   ServerName myserver.net
    DocumentRoot "/home/utils/rails/public"
    <Directory "/home/utils/rails/public">
        <IfModule mod_negotiation.c>
            Options -MultiViews
        </IfModule>
        AllowOverride None
        Require all granted
   </Directory>
   LogLevel warn
   ErrorLog ${APACHE_LOG_DIR}/myserver.net_error.log
   CustomLog ${APACHE_LOG_DIR}/myserver.net_access.log combined
</VirtualHost>

A chave é:

Require all granted

Isso é usado desde o Apache 2.4. As outras diretivas não são chaves para o problema de acesso, mas eu as tenho para proibir as diretivas .htaccess ( ALlowOverride ) e lidar com Multiviews

Definir permissões para 0755 funciona e não precisa ser alterado

    
por EastsideDeveloper 11.10.2017 / 11:02