obtendo um erro 403

5

Constantemente recebendo um erro 403.

You don't have permission to access /index.html on this server.

arquivo de log:

(13)Permission denied: access to /index.html denied
(13)Permission denied: access to /favicon.ico denied

permissões de diretório (/ home / www / eric / cascade)

-rwxr-xr-x 1 eric www  193 Jan 28 17:38 .htaccess
drwxr-xr-x 2 eric www 4096 Jan 28 18:27 images
-rwxr-xr-x 1 eric www 3715 Jan 28 18:27 index.html
-rwxr-xr-x 1 eric www  753 Jan 28 17:38 index.php
drwxr-xr-x 2 eric www 4096 Jan 28 18:25 js
-rwxr-xr-x 1 eric www 2258 Jan 28 18:27 oops.html

Arquivo de configuração:

<VirtualHost 50.57.104.245:80>
    ServerName dev.cascaderisermanagement.com
    DocumentRoot /home/eric/cascade/public

    <Directory "/home/eric/cascade/public">
        DirectoryIndex index.php
        AllowOverride All
        Order allow,deny
        Allow from ALL
    </Directory>
</VirtualHost>

É possível que o apache não acesse o grupo www? Como faço para verificar / confirmar?

    
por TuK 04.02.2012 / 07:33

2 respostas

5

Algumas pistas tentam seguir:

Em relação às permissões de arquivo, as permissões de cada diretório pai também são importantes. Todos eles devem ter permissão de execução (significando "pesquisa" para diretórios).

ls -l / /home /home/eric /home/eric/cascade

Para verificar facilmente, você pode su para o usuário que o apache está executando e tente catalogar o arquivo, por exemplo,

sudo -u nobody cat /home/eric/cascade/public/index.html

E o grupo não importa se as permissões mundiais são mais inclusivas de qualquer maneira.

Além disso, o que há nesse arquivo .htaccess ? Percebi que você os ativou com AllowOverride e há um nesse diretório.

    
por 04.02.2012 / 07:47
0

O erro 13 indica um nível de sistema de arquivos "permissão negada".

Se você tem uma diretiva Deny em sua configuração, você obtém uma linha diferente em seus registros de erros. Aqui estão alguns exemplos.

Usando um Deny :

Feb  4 10:44:08 host apache2[7907]: [error] [client 192.168.1.1] client denied by server configuration: /var/www/site/index.php

Usando chmod 000 no diretório (com AllowOverride ativado):

Feb  4 10:44:23 host apache2[7902]: [crit] [client 192.168.1.1] (13)Permission denied: /var/www/site/.htaccess pcfg_openfile: unable to check htaccess file, ensure it is readable

Usando chmod 000 em um arquivo estático:

Feb  4 10:51:15 host apache2[7905]: [error] [client 192.168.1.1] (13)Permission denied: file permissions deny server access: /var/www/site/favicon.ico

Usando chmod 000 em um arquivo PHP:

Feb  4 10:43:54 host apache2[7900]: PHP Warning:  Unknown: failed to open stream: Permission denied in Unknown on line 0
Feb  4 10:43:54 host apache2[7900]: PHP Fatal error:  Unknown: Failed opening required '/var/www/site/index.php' (include_path='.:/usr/share/php:/usr/share/pear') in Unknown on line 0

Você pode notar que em todos os casos de erro (13), o caminho completo do arquivo foi fornecido na mensagem de erro, não em um URI relativo. Isso significa que, no seu caso, o Apache está tentando ler index.html da raiz do seu sistema de arquivos, não /home/eric/cascade/public/ .

Eu suspeito que você tenha outro vhost em algum lugar que tenha DocumentRoot de /. Para confirmar isso, você pode adicionar as diretivas AccessLog e ErrorLog a esse vhost apontando para um local diferente. Você também pode usar este comando:

apache2ctl -S

Para ajudar a descobrir quais vhosts você tem e em que ordem eles são aplicados.

    
por 04.02.2012 / 12:05