Puncte:0

Directiva Nginx try_file nu funcționează conform așteptărilor

drapel zm

Î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?

Richard Smith avatar
drapel jp
Modulul [`index`](http://nginx.org/en/docs/http/ngx_http_index_module.html#index) este responsabil pentru procesarea URI-urilor care se termină cu `/`. Și va provoca o *redirecționare internă* care schimbă valoarea lui `$uri` în `/index.html`. De aceea aveți nevoie de *ambele* `$uri` și `$uri/` în instrucțiunea `try_files`.

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.