Formas de pagamento Abuse

O que fazer se o ficheiro de índice não for especificado nas definições do Nginx

28.11.2023, 23:29

Se o ficheiro de índice não for especificado nas definições do Nginx, o servidor devolverá um erro 403 Forbidden ao aceder ao diretório raiz. Para resolver este problema, é necessário adicionar a diretiva index à configuração do servidor e especificar o ficheiro pretendido (normalmente index.html ou index.php).

O que significa 403 Forbidden?

O erro 403 Forbidden no Linux significa que o utilizador que está a aceder ao servidor não tem direitos de acesso ao recurso solicitado. Isto pode ser causado por permissões incorrectas num ficheiro ou diretório, definições de segurança do servidor ou configuração do Nginx.

Para corrigir este erro, é necessário certificar-se de que as permissões de ficheiros e diretórios estão corretamente definidas e verificar a configuração do servidor

O que parece na prática

Exemplo:

server {
    listen 80;
    server_name example.com;
    root /var/www/example.com;
    index index.html;
    location / {
        try_files $uri $uri/ =404;
    }
}

Neste exemplo, especificámos que, ao aceder ao diretório raiz, o servidor procurará o ficheiro index.html e apresentará o seu conteúdo. Se esse ficheiro estiver em falta, será devolvido um erro 404 Not Found.

Após fazer alterações na configuração do servidor, é necessário reiniciar o Nginx para aplicar as configurações:

sudo systemctl restart nginx

Se solicitar um URL como /vstats/, mas não tiver um ficheiro de índice especificado nas definições do Nginx, irá falhar e obter um erro 404. Você pode adicionar uma diretiva de índice à sua localização:

location / {
index index.php index.html index.htm;
}

Ou diretamente ao servidor, no Nginx todas as localizações herdam as diretivas definidas no servidor