Încerc să înțeleg fișierul de configurare Nginx.
Iată arborele director al aplicației mele:
/app
|-- abcd.html
|-- fisier.php
|-- index.html
|-- index.php
|-- sss
| `-- index.html
|-- style.css
`-- thumb.png
Iată configurația mea de testare nginx:
evenimente {}
http {
rewrite_log on;
error_log /var/log/nginx/localhost.error_log depanare;
Server {
include mime.tipuri;
root /app;
asculta 8080;
index index.html;
Locație / {
try_files $uri/ =404;
}
}
}
Din înțelegerea mea despre fișierul de configurare Nginx, atunci când solicit localhost:8080/
, conform documentației try_files, ar trebui să verifice fișierul /
, apoi, deoarece este un director, ar trebui să servească fișierul index în interior. Dar, de fapt, nu. am incercat si eu try_files $uri =404;
. Returnează și o pagină 404. Dar când încerc try_files $uri $uri/ =404
, funcționează și răspunde cu fișierul index. Poate cineva să explice, vă rog, ce se întâmplă?
Am încercat și altceva care nu a funcționat așa cum mă așteptam. Ca si pana acum, in contextul locatiei, am incercat try_files /sss /sss/ =404
. Mă așteptam să-mi servească fișierul index din interior sss
director, indiferent care este adresa mea URL solicitată. Dar rămâne blocat într-o buclă infinită de cereri. Răspunde cu o redirecționare 301 și solicitări de /sss/
url. nu este ca in cazul precedent, cand am folosit? try_files $uri $uri/ =404
?