Puncte:0

nginx servește fișiere statice ȘI proxy invers

drapel za

Vreau ca browserul să fie în comunicare constantă (websocket) cu serverele mele backend, deoarece primesc date în mod constant. Dar vreau și fișierele statice să le fie oferite de către nginx. Cu alte cuvinte, vreau ca nginx să servească fișiere statice ȘI ȘI ȘI proxy pentru serverele mele backend.Am încercat să pun ambele directive în același bloc de locații:

Locație / {

        # SERVIRE FIȘIERE STATICE:
        rădăcină C:bla/bla/bla;
        index mysite.html;

        # ANDDDD REVERSE PROXY PENTRU SERVERE DE BACKEND:
        proxy_pass https://backend;
        proxy_http_versiunea 1.1;
        proxy_set_header Actualizare $http_upgrade;
        proxy_set_header Conexiune „upgrade”;
        proxy_read_timeout 86400;
}

.. dar acest lucru omite pur și simplu servirea fișierelor statice și merge direct la serverele mele backend.

am incercat si eu:

Locație / {

# SERVIRE FIȘIERE STATICE:
rădăcină C:bla/bla/bla;
index mysite.html;
try_files $uri $uri/ @proxy;

}

locație @proxy {

# ANDDDD REVERSE PROXY PENTRU SERVERE DE BACKEND:
proxy_pass https://backend;
proxy_http_versiunea 1.1;
proxy_set_header Actualizare $http_upgrade;
proxy_set_header Conexiune „upgrade”;
proxy_read_timeout 86400;

}

.. dar, desigur, acesta servește doar fișierele statice și nu continuă cu proxy-ul, deoarece a fost găsit mysite.html.

am incercat si eu:

Locație / {

# SERVIRE FIȘIERE STATICE:
rădăcină C:bla/bla/bla;
index mysite.html;

}

Locație / {

# ANDDDD REVERSE PROXY PENTRU SERVERE DE BACKEND:
proxy_pass https://backend;
proxy_http_versiunea 1.1;
proxy_set_header Actualizare $http_upgrade;
proxy_set_header Conexiune „upgrade”;
proxy_read_timeout 86400;

}

.. dar aceasta produce o eroare deoarece acum există două locații/blocuri.

Știe cineva cum să facă ca nginx să servească fișiere statice ȘI proxy către un server backend?

drapel ru
De ce ați dori ca un fișier să fie difuzat de două ori? Nu cred ca se pot face 2 cereri de la una.
Puncte:1
drapel us

index mysite.html directiva face serverul nginx mysite.html la toate cererile care se termină cu /.

Dacă doriți să difuzați numai fișiere din backend atunci când nu este găsit un fișier static, trebuie să aveți:

Locație / {
    # SERVIRE FIȘIERE STATICE:
    rădăcină C:bla/bla/bla;
    try_files $uri $uri/ @proxy;
}

locație @proxy {
    # ANDDDD REVERSE PROXY PENTRU SERVERE DE BACKEND:
    proxy_pass https://backend;
    proxy_http_versiunea 1.1;
    proxy_set_header Actualizare $http_upgrade;
    proxy_set_header Conexiune „upgrade”;
    proxy_read_timeout 86400;
}

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.