Puncte:2

nginx try_files provoacă componente de cale dublată care fac cererile eșuate

drapel bi

Încerc să fac două foldere adiacente, /var/www/site și /var/www/overlay@site coexistă într-un singur site (pentru permisiunea fișierelor și instrumentele de implementare).

Am încercat să ajustez o configurație de bază, cum ar fi (cu configurația HTTPS eliminată):

Server {
    nume_server example.com;
    root /var/www/site;

    locație / { try_files $uri $uri/ =404; }
}

în aceasta, mutând rădăcina la un nivel în sus:

Server {
    nume_server example.com;
    rădăcină /var/www;

    locație / { try_files /site$uri /site$uri/ /overlay@site$uri /overlay@site$uri/ =404; }
}

dar acest lucru face ca toate paginile să revină 404 dintr-un motiv pe care nu îl înțeleg. Dacă activez înregistrarea de depanare, se pare că încearcă să se încarce, de ex. /var/www/site/site/index.html, și nu sunt sigur unde s-a dublat site-ul vine din.

Iată debug.log pentru o solicitare:

2021/12/18 14:56:22 [notificare] 451123#451123: procesul de semnal a început
2021/12/18 14:56:37 [depanare] 451127#451127: *1 SSL_do_handshake: -1
2021/12/18 14:56:37 [depanare] 451127#451127: *1 SSL_get_error: 2
2021/12/18 14:56:37 [depanare] 451127#451127: *1 SSL handshake handler: 0
2021/12/18 14:56:37 [depanare] 451127#451127: *1 sesiune nouă ssl: 775CFEDA:32:169
2021/12/18 14:56:37 [depanare] 451127#451127: *1 sesiune nouă ssl: D9E5A8B9:32:169
2021/12/18 14:56:37 [depanare] 451127#451127: *1 SSL_do_handshake: 1
2021/12/18 14:56:37 [depanare] 451127#451127: *1 SSL: TLSv1.3, cifr: "TLS_AES_256_GCM_SHA384 TLSv1.3 Kx=any Au=any Enc=AESGCM(25AD6)
2021/12/18 14:56:37 [depanare] 451127#451127: *1 conexiune reutilizabilă: 1
2021/12/18 14:56:37 [depanare] 451127#451127: *1 Http wait request handler
2021/12/18 14:56:37 [depanare] 451127#451127: *1 malloc: 00005590274BA790:1024
2021/12/18 14:56:37 [depanare] 451127#451127: *1 SSL_read: 399
2021/12/18 14:56:37 [depanare] 451127#451127: *1 SSL_read: -1
2021/12/18 14:56:37 [depanare] 451127#451127: *1 SSL_get_error: 2
2021/12/18 14:56:37 [depanare] 451127#451127: *1 conexiune reutilizabilă: 0
2021/12/18 14:56:37 [depanare] 451127#451127: *1 posix_memalign: 00005590274DBCB0:4096 @16
2021/12/18 14:56:37 [depanare] 451127#451127: *1 linie de solicitare a procesului http
2021/12/18 14:56:37 [depanare] 451127#451127: *1 linie de solicitare http: „GET / HTTP/1.1”
2021/12/18 14:56:37 [depanare] 451127#451127: *1 http uri: "/"
2021/12/18 14:56:37 [depanare] 451127#451127: *1 http args: ""
2021/12/18 14:56:37 [depanare] 451127#451127: *1 http exten: ""
2021/12/18 14:56:37 [depanare] 451127#451127: *1 posix_memalign: 00005590274DCCC0:4096 @16
2021/12/18 14:56:37 [depanare] 451127#451127: *1 linie de antet a cererii de proces http
2021/12/18 14:56:37 [depanare] 451127#451127: *1 antet http: „User-Agent: Mozilla/5.0+(compatibil; UptimeRobot/2.0; http://www.uptimerobot.com/)”
2021/12/18 14:56:37 [depanare] 451127#451127: *1 antet http: „Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 "
2021/12/18 14:56:37 [depanare] 451127#451127: *1 antet http: „Accept-Language: en-US,en;q=0.8”
2021/12/18 14:56:37 [depanare] 451127#451127: *1 antet http: „Accept-Charset: ISO-8859-1,UTF-8;q=0.7,*;q=0.7”
2021/12/18 14:56:37 [depanare] 451127#451127: *1 antet http: „Conexiune: închidere”
2021/12/18 14:56:37 [depanare] 451127#451127: *1 antet http: „cache-control: no-cache”
2021/12/18 14:56:37 [depanare] 451127#451127: *1 antet http: „Referer: https://www.witchoflight.com”
2021/12/18 14:56:37 [depanare] 451127#451127: *1 antet http: „gazdă: www.witchoflight.com”
2021/12/18 14:56:37 [depanare] 451127#451127: *1 antet http: „accept-encoding: gzip, deflate”
2021/12/18 14:56:37 [depanare] 451127#451127: *1 antet http terminat
2021/12/18 14:56:37 [depanare] 451127#451127: *1 cronometru de eveniment del: 3: 3230777386
2021/12/18 14:56:37 [depanare] 451127#451127: *1 fază generică: 0
2021/12/18 14:56:37 [depanare] 451127#451127: *1 fază de rescriere: 1
2021/12/18 14:56:37 [depanare] 451127#451127: *1 locație de testare: „/”
2021/12/18 14:56:37 [depanare] 451127#451127: *1 utilizând configurația „/”
2021/12/18 14:56:37 [depanare] 451127#451127: *1 http cl:-1 max:1048576
2021/12/18 14:56:37 [depanare] 451127#451127: *1 fază de rescriere: 3
2021/12/18 14:56:37 [depanare] 451127#451127: *1 fază de rescriere: 4
2021/12/18 14:56:37 [depanare] 451127#451127: *1 fază de post rescriere: 5
2021/12/18 14:56:37 [depanare] 451127#451127: *1 fază generică: 6
2021/12/18 14:56:37 [depanare] 451127#451127: *1 fază generică: 7
2021/12/18 14:56:37 [depanare] 451127#451127: *1 fază generică: 8
2021/12/18 14:56:37 [depanare] 451127#451127: *1 fază de acces: 9
2021/12/18 14:56:37 [depanare] 451127#451127: *1 fază de acces: 10
2021/12/18 14:56:37 [depanare] 451127#451127: *1 fază de acces: 11
2021/12/18 14:56:37 [depanare] 451127#451127: *1 fază de acces: 12
2021/12/18 14:56:37 [depanare] 451127#451127: *1 fază de post acces: 13
2021/12/18 14:56:37 [depanare] 451127#451127: *1 fază generică: 14
2021/12/18 14:56:37 [depanare] 451127#451127: *1 încercați gestionarea fișierelor
2021/12/18 14:56:37 [depanare] 451127#451127: *1 copie script http: „/www.witchoflight.com”
2021/12/18 14:56:37 [depanare] 451127#451127: *1 var script http: "/"
2021/12/18 14:56:37 [depanare] 451127#451127: *1 încearcă să utilizeze fișierul: „/www.witchoflight.com/” „/var/www/www.witchoflight.com/”
2021/12/18 14:56:37 [depanare] 451127#451127: *1 copie script http: „/www.witchoflight.com”
2021/12/18 14:56:37 [depanare] 451127#451127: *1 var script http: "/"
2021/12/18 14:56:37 [depanare] 451127#451127: *1 încearcă să folosească dir: "/www.witchoflight.com/" "/var/www/www.witchoflight.com/"
2021/12/18 14:56:37 [depanare] 451127#451127: *1 încercați fișierul uri: "/www.witchoflight.com/"
2021/12/18 14:56:37 [depanare] 451127#451127: *1 fază generică: 15
2021/12/18 14:56:37 [depanare] 451127#451127: *1 fază de conținut: 16
2021/12/18 14:56:37 [depanare] 451127#451127: *1 fază de conținut: 17
2021/12/18 14:56:37 [depanare] 451127#451127: *1 fază de conținut: 18
2021/12/18 14:56:37 [depanare] 451127#451127: *1 index deschis „/var/www/www.witchoflight.com/index.html”
2021/12/18 14:56:37 [depanare] 451127#451127: *1 redirecționare internă: „/www.witchoflight.com/index.html?”
2021/12/18 14:56:37 [depanare] 451127#451127: *1 fază de rescriere: 1
2021/12/18 14:56:37 [depanare] 451127#451127: *1 locație de testare: „/”
2021/12/18 14:56:37 [depanare] 451127#451127: *1 locație de testare: „.gitignore”
2021/12/18 14:56:37 [depanare] 451127#451127: *1 utilizând configurația „/”
2021/12/18 14:56:37 [depanare] 451127#451127: *1 http cl:-1 max:1048576
2021/12/18 14:56:37 [depanare] 451127#451127: *1 fază de rescriere: 3
2021/12/18 14:56:37 [depanare] 451127#451127: *1 fază de rescriere: 4
2021/12/18 14:56:37 [depanare] 451127#451127: *1 fază de post rescriere: 5
2021/12/18 14:56:37 [depanare] 451127#451127: *1 fază generică: 6
2021/12/18 14:56:37 [depanare] 451127#451127: *1 fază generică: 7
2021/12/18 14:56:37 [depanare] 451127#451127: *1 fază generică: 8
2021/12/18 14:56:37 [depanare] 451127#451127: *1 fază de acces: 9
2021/12/18 14:56:37 [depanare] 451127#451127: *1 fază de acces: 10
2021/12/18 14:56:37 [depanare] 451127#451127: *1 fază de acces: 11
2021/12/18 14:56:37 [depanare] 451127#451127: *1 fază de acces: 12
2021/12/18 14:56:37 [depanare] 451127#451127: *1 fază de post acces: 13
2021/12/18 14:56:37 [depanare] 451127#451127: *1 fază generică: 14
2021/12/18 14:56:37 [depanare] 451127#451127: *1 încercați gestionarea fișierelor
2021/12/18 14:56:37 [depanare] 451127#451127: *1 copie script http: „/www.witchoflight.com”
2021/12/18 14:56:37 [depanare] 451127#451127: *1 var script http: "/www.witchoflight.com/index.html"
2021/12/18 14:56:37 [depanare] 451127#451127: *1 încearcă să utilizeze fișierul: "/www.witchoflight.com/www.witchoflight.com/index.html" "/var/www/www. witchoflight.com/www.witchoflight.com/index.html"
2021/12/18 14:56:37 [depanare] 451127#451127: *1 copie script http: „/www.witchoflight.com”
2021/12/18 14:56:37 [depanare] 451127#451127: *1 var script http: "/www.witchoflight.com/index.html"
2021/12/18 14:56:37 [depanare] 451127#451127: *1 încearcă să utilizeze dir: "/www.witchoflight.com/www.witchoflight.com/index.html" "/var/www/www. witchoflight.com/www.witchoflight.com/index.html"
2021/12/18 14:56:37 [depanare] 451127#451127: *1 încearcă să utilizeze fișierul: „=404” „/var/www=404”
2021/12/18 14:56:37 [depanare] 451127#451127: *1 Solicitare de finalizare http: 404, "/www.witchoflight.com/index.html?" a:1, c:2
2021/12/18 14:56:37 [depanare] 451127#451127: *1 răspuns special http: 404, "/www.witchoflight.com/index.html?"
2021/12/18 14:56:37 [depanare] 451127#451127: *1 http set pentru eliminarea corpului
2021/12/18 14:56:37 [depanare] 451127#451127: *1 eroare de urmărire a erorilor de uploadprogress: 404
2021/12/18 14:56:37 [depanare] 451127#451127: *1 instrument de urmărire a erorilor de progres de încărcare nu urmărește în această locație
2021/12/18 14:56:37 [depanare] 451127#451127: *1 antet filtru xslt
2021/12/18 14:56:37 [depanare] 451127#451127: *1 HTTP/1.1 404 Nu a fost găsit
Server: nginx/1.18.0 (Ubuntu)
Data: sâmbătă, 18 decembrie 2021 19:56:37 GMT
Tip de conținut: text/html
Transfer-Codificare: fragmentat
Conexiune: aproape
Codificarea conținutului: gzip

2021/12/18 14:56:37 [depanare] 451127#451127: *1 scrie buf t:1 f:0 00005590274DD280, pos 00005590274DD280, dimensiune: 190 dimensiune fișier: 0,
2021/12/18 14:56:37 [depanare] 451127#451127: *1 filtru de scriere http: l:0 f:0 s:190
2021/12/18 14:56:37 [depanare] 451127#451127: *1 filtru de ieșire http „/www.witchoflight.com/index.html?”
2021/12/18 14:56:37 [depanare] 451127#451127: *1 filtru de copiere http: "/www.witchoflight.com/index.html?"
2021/12/18 14:56:37 [depanare] 451127#451127: *1 filtru de imagine
2021/12/18 14:56:37 [depanare] 451127#451127: *1 corp filtru xslt
2021/12/18 14:56:37 [depanare] 451127#451127: *1 http amână filtrul "/www.witchoflight.com/index.html?" 00005590274DD478
2021/12/18 14:56:37 [depanare] 451127#451127: *1 filtru http gzip
2021/12/18 14:56:37 [depanare] 451127#451127: *1 malloc: 0000559027619160:12288
2021/12/18 14:56:37 [depanare] 451127#451127: *1 gzip alloc: n:1 s:5952 a:8192 p:0000559027619160
2021/12/18 14:56:37 [depanare] 451127#451127: *1 gzip alloc: n:512 s:2 a:1024 p:000055902761B160
2021/12/18 14:56:37 [depanare] 451127#451127: *1 gzip alloc: n:512 s:2 a:1024 p:000055902761B560
2021/12/18 14:56:37 [depanare] 451127#451127: *1 gzip alloc: n:512 s:2 a:1024 p:000055902761B960
2021/12/18 14:56:37 [depanare] 451127#451127: *1 gzip alloc: n:256 s:4 a:1024 p:000055902761BD60
2021/12/18 14:56:37 [depanare] 451127#451127: *1 gzip in: 00005590274DD4A8
2021/12/18 14:56:37 [depanare] 451127#451127: *1 gzip in_buf:00005590274DD350 ni:00005590262646C0 ai:100
2021/12/18 14:56:37 [depanare] 451127#451127: *1 malloc: 000055902761C170:4096
2021/12/18 14:56:37 [depanare] 451127#451127: *1 deflate in: ni:00005590262646C0 nr:000055902761C170 ai:100 ao:4096 fl:0 redo:0
2021/12/18 14:56:37 [depanare] 451127#451127: *1 deflate out: ni:0000559026264724 nr:000055902761C17A ai:0 ao:4086 rc:0
2021/12/18 14:56:37 [depanare] 451127#451127: *1 gzip in_buf:00005590274DD350 pos:00005590262646C0
2021/12/18 14:56:37 [depanare] 451127#451127: *1 gzip in: 00005590274DD4B8
2021/12/18 14:56:37 [depanare] 451127#451127: *1 gzip in_buf:00005590274DD3A0 ni:0000559026264E20 ai:62
2021/12/18 14:56:37 [debug] 451127#451127: *1 deflate in: ni:0000559026264E20 no:000055902761C17A ai:62 ao:4086 fl:4
2021/12/18 14:56:37 [depanare] 451127#451127: *1 deflate out: ni:0000559026264E5E nr:000055902761C1EB ai:0 ao:3973 rc:1
2021/12/18 14:56:37 [depanare] 451127#451127: *1 gzip in_buf:00005590274DD3A0 pos:0000559026264E20
2021/12/18 14:56:37 [depanare] 451127#451127: *1 gratuit: 0000559027619160
2021/12/18 14:56:37 [depanare] 451127#451127: *1 bucată http: 123
2021/12/18 14:56:37 [depanare] 451127#451127: *1 scrie vechi buf t:1 f:0 00005590274DD280, pos 00005590274DD280, dimensiune: 190 dimensiune fișier: 0,
2021/12/18 14:56:37 [depanare] 451127#451127: *1 scrie buf t:1 f:0 00005590274DD588, pos 00005590274DD588, dimensiune: 4 fișier: 0, dimensiune:
2021/12/18 14:56:37 [depanare] 451127#451127: *1 scrie buf t:1 f:0 000055902761C170, pos 000055902761C170, dimensiune: 123 fișier: 00
2021/12/18 14:56:37 [depanare] 451127#451127: *1 scrie buf t:0 f:0 0000000000000000, pos 0000559026237155, dimensiune: 7 fișier: 0,
2021/12/18 14:56:37 [depanare] 451127#451127: *1 filtru de scriere http: l:1 f:1 s:324
2021/12/18 14:56:37 [depanare] 451127#451127: *1 limita de filtru de scriere http 0
2021/12/18 14:56:37 [depanare] 451127#451127: *1 posix_memalign: 0000559027618E60:512 @16
2021/12/18 14:56:37 [depanare] 451127#451127: *1 malloc: 0000559027611C10:16384
2021/12/18 14:56:37 [depanare] 451127#451127: *1 copie SSL buf: 190
2021/12/18 14:56:37 [depanare] 451127#451127: *1 copie SSL buf: 4
2021/12/18 14:56:37 [depanare] 451127#451127: *1 copie SSL buf: 123
2021/12/18 14:56:37 [depanare] 451127#451127: *1 copie SSL buf: 7
2021/12/18 14:56:37 [depanare] 451127#451127: *1 SSL de scris: 324
2021/12/18 14:56:37 [depanare] 451127#451127: *1 SSL_write: 324
2021/12/18 14:56:37 [depanare] 451127#451127: *1 filtru de scriere http 0000000000000000
2021/12/18 14:56:37 [depanare] 451127#451127: *1 filtru de copiere http: 0 "/www.witchoflight.com/index.html?"
2021/12/18 14:56:37 [depanare] 451127#451127: *1 Solicitare de finalizare http: 0, "/www.witchoflight.com/index.html?" a:1, c:2
2021/12/18 14:56:37 [depanare] 451127#451127: *1 număr de solicitări http:2 blk:0
2021/12/18 14:56:37 [depanare] 451127#451127: *1 Solicitare de finalizare http: -4, "/www.witchoflight.com/index.html?" a:1, c:1
2021/12/18 14:56:37 [depanare] 451127#451127: *1 Număr de solicitări http:1 blk:0
2021/12/18 14:56:37 [depanare] 451127#451127: *1 http cerere de închidere
2021/12/18 14:56:37 [depanare] 451127#451127: *1 http handler de jurnal
2021/12/18 14:56:37 [depanare] 451127#451127: *1 handler de jurnal http geoip2
2021/12/18 14:56:37 [depanare] 451127#451127: *1 gratuit: 000055902761C170
2021/12/18 14:56:37 [depanare] 451127#451127: *1 gratuit: 0000000000000000
2021/12/18 14:56:37 [depanare] 451127#451127: *1 gratuit: 00005590274DBCB0, neutilizat: 1
2021/12/18 14:56:37 [depanare] 451127#451127: *1 gratuit: 00005590274DCCC0, neutilizat: 1469
2021/12/18 14:56:37 [depanare] 451127#451127: *1 închide conexiunea http: 3
2021/12/18 14:56:37 [depanare] 451127#451127: *1 SSL_shutdown: 1
2021/12/18 14:56:37 [depanare] 451127#451127: *1 conexiune reutilizabilă: 0
2021/12/18 14:56:37 [depanare] 451127#451127: *1 gratuit: 0000559027611C10
2021/12/18 14:56:37 [depanare] 451127#451127: *1 gratuit: 00005590274BA790
2021/12/18 14:56:37 [depanare] 451127#451127: *1 gratuit: 000055902750CEC0, neutilizat: 8
2021/12/18 14:56:37 [depanare] 451127#451127: *1 gratuit: 0000559027618E60, neutilizat: 384
Puncte:1
drapel bi

Problema aici s-a dovedit a fi /site$uri/ intrări. Ei primesc o redirecționare de la index regulă, deci o cerere către, de ex. /foo este găsit la /site/foo/index.html, iar asta face o redirecționare internă către /site/foo/index.html, care apoi eșuează pentru că nu poate găsi /site/site/foo/index.html.

Am putut să rezolv asta adăugând

locație /site/ { try_files $uri =404; }
locație /overlay@site/ { try_files $uri =404; }

dar acest lucru pare să aibă încă unele ciudații legate de redirecționări. Obțin o remediere mai robustă, schimbându-mi suprapunerea pentru a funcționa astfel:

Server {
    nume_server example.com;
    root /var/www/site;

    locație / { try_files $uri $uri/ @overlay; }
    locație @overlay {
        root /var/www/overlay@site;
        try_files $uri $uri/ =404;
    }
}

(Mulțumită Paul Khuong m-a ajutat să diagnosticez problema.)

djdomi avatar
drapel za
amintiți-vă să vă acceptați propriul răspuns, altfel ne vom aminti de tine până la sfârșitul vieții la această întrebare

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.