Betalningsmetoder Abuse

Vad gör man om indexfilen inte anges i Nginx-inställningarna?

  • Hem
  • Kunskapsbas
  • Vad gör man om indexfilen inte anges i Nginx-inställningarna?
28.11.2023, 23:29

Om indexfilen inte anges i Nginx-inställningarna kommer servern att returnera ett 403 Forbidden-fel vid åtkomst till rotkatalogen. För att åtgärda detta problem måste du lägga till index-direktivet i serverkonfigurationen och ange önskad fil (vanligtvis index.html eller index.php).

Vad betyder 403 Forbidden?

Felet 403 Forbidden i Linux innebär att den användare som har åtkomst till servern inte har åtkomsträttigheter till den begärda resursen. Detta kan orsakas av felaktiga behörigheter för en fil eller katalog, serverns säkerhetsinställningar eller Nginx-konfigurationen.

För att åtgärda det här felet ska du kontrollera att behörigheterna för filer och kataloger är korrekt inställda och kontrollera serverkonfigurationen

Så här ser det ut i praktiken

Ett exempel:

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

I det här exemplet har vi angett att vid åtkomst till rotkatalogen ska servern leta efter filen index.html och visa innehållet i den. Om en sådan fil saknas returneras ett 404 Not Found-fel.

När du har gjort ändringar i serverkonfigurationen måste du starta om Nginx så att inställningarna tillämpas:

sudo systemctl restart nginx

Om du begär en URL som /vstats/, men du inte har angett en indexfil i dina Nginx-inställningar, kommer du att misslyckas och få en 404. Du kan lägga till ett indexdirektiv på din plats:

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

Eller direkt till servern, i Nginx ärver alla platser de direktiv som anges i server