Puncte:0

Cum să adaugi mai multe ip și să adaugi sub-domeniu în nginx?

drapel ru

Urmeam tutorialul nginx,uwsgi with flask & docker. Fișierul meu de configurare nginx conține:

Server {

asculta 5000;
nume_server 19X.X.X.X;

client_header_buffer_size 5M;
large_client_header_buffers 4 5M;
client_max_body_size 75M;

Locație / {
    include uwsgi_params;     
    uwsgi_pass balon:8080;
   }
}

Aici vreau să adaug o adresă IP suplimentară, cum ar fi 123.345.67.8 și un subdomeniu test.mydomain.com. Cum pot adăuga acolo?

EDITARE 2:


Server {

asculta 1.1.1.1:5000 default_server;
nume_server gazdă locală;

client_header_buffer_size 5M;
large_client_header_buffers 4 5M;
client_max_body_size 75M;

Locație / {
    include uwsgi_params;     
    uwsgi_pass balon:8080;
   }
}


Server {

ascultați 2.2.2.2:5000 default_server;
nume_server test.mydomain.com;

client_header_buffer_size 5M;
large_client_header_buffers 4 5M;
client_max_body_size 75M;

Locație / {
    include uwsgi_params;     
    uwsgi_pass balon:8080;
   }
}
Ivan Shatsky avatar
drapel gr
Puteți lista orice număr de nume de server cu directiva `server_name`. Cu toate acestea, având un singur bloc de server ca acesta, nginx îl va folosi pentru a procesa fiecare cerere care vine la portul TCP 5000, indiferent de adresa IP la care vine sau care este valoarea antetului HTTP `Host`. Consultați pagina de documentație oficială [Cum procesează nginx o cerere](http://nginx.org/en/docs/http/request_processing.html) sau [acest](https://stackoverflow.com/a/60362700/7121513) raspunde pentru si mai multe detalii.
drapel ru
@IvanShatsky Mulțumesc pentru răspuns. Vă rugăm să vedeți EDIT1 al întrebării mele. Dacă fac acest lucru, îl pot accesa cu „1.1.1.1:5000” precum și cu „test.mydomain.com”?
Ivan Shatsky avatar
drapel gr
Cred că nu ai idee despre **serverul implicit**.Dacă serverul dvs. ascultă atât adresele IP `1.1.1.1`, cât și `2.2.2.2`, primul dvs. bloc de server va servi fiecare cerere care vine la portul 5000. Nu trebuie să definiți al doilea bloc de server. Veți avea nevoie de el numai dacă doriți să difuzați site-uri diferite pe `1.1.1.1` și `2.2.2.2`. Și folosind `test.mydomain.com` în bara de adrese a browserului, browserul va utiliza portul 80/443, în funcție de schema `htttp://` sau `https://`, va trebui să specificați explicit portul : `http://test.mydomain.com:5000/...`
drapel ru
@IvanShatsky Aceasta este o idee clară despre serverul implicit. Mulțumiri. Dar permiteți-mi să clarific o problemă. De exemplu, vreau să adaug 1.1.1.1 IP care funcționează pentru accesul la rețea privată. Și doriți să adăugați 2.2.2.2 -> https://test.mydomain.com pentru a-l accesa public. Atunci cum pot modifica pentru această problemă?
drapel ru
Vă rugăm să vedeți EDIT 2 (actualizat). Va funcționa acum?
Ivan Shatsky avatar
drapel gr
Din înțelesul meu, dacă doriți să serviți același site pentru ambele adrese, nu aveți nevoie de altceva decât de un singur bloc de server cu directiva `ascultați 5000;`. Nici măcar nu trebuie să specificați un nume de server dacă domeniul dvs. `test.mydomain.com` se rezolvă la adresa dvs. Va servi orice solicitare care vine la portul TCP 5000. Cred că linkurile pe care le-am furnizat mai devreme sunt destul de explicabile.

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.