Spôsoby platby Abuse

Čo robiť, ak v nastaveniach Nginx nie je zadaný indexový súbor

28.11.2023, 23:29

Ak indexový súbor nie je zadaný v nastaveniach Nginx, server pri prístupe do koreňového adresára vráti chybu 403 Forbidden. Ak chcete tento problém vyriešiť, musíte do konfigurácie servera pridať direktívu index a zadať požadovaný súbor (zvyčajne index.html alebo index.php).

Čo znamená 403 Forbidden?

Chyba 403 Forbidden v systéme Linux znamená, že používateľ, ktorý pristupuje k serveru, nemá prístupové práva k požadovanému zdroju. Môže to byť spôsobené nesprávnymi právami na súbor alebo adresár, nastaveniami zabezpečenia servera alebo konfiguráciou Nginx.

Ak chcete túto chybu odstrániť, skontrolujte, či sú oprávnenia na súbory a adresáre nastavené správne, a skontrolujte konfiguráciu servera

Ako to vyzerá v praxi

Príklad:

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

V tomto príklade sme určili, že pri prístupe do koreňového adresára bude server hľadať súbor index.html a zobrazí jeho obsah. Ak takýto súbor chýba, vráti sa chyba 404 Not Found.

Po vykonaní zmien v konfigurácii servera je potrebné reštartovať Nginx, aby sa nastavenia uplatnili:

sudo systemctl restart nginx

Ak si vyžiadate adresu URL, ako napríklad /vstats/, ale v nastaveniach Nginx nemáte zadaný indexový súbor, zlyhá to a zobrazí sa hlásenie 404. Do umiestnenia môžete pridať smernicu index:

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

alebo priamo do servera, v Nginx všetky umiestnenia zdedia smernice nastavené v serveri