Nginx ubuntu: instalare și configurare

Nginx Ubuntu este un server web open-source cu funcții puternice de echilibrare a încărcăturii, proxy invers și cache. Acesta a fost proiectat inițial pentru a elimina eșecurile de scalare și paralelism pe serverele existente. Arhitectura asincronă bazată pe evenimente o face cea mai populară și eficientă.

Două versiuni de instalare

Există, de obicei, două versiuni open source de Nginx Ubuntu - de bază și stabilă. Versiunea de bază este o mică parte din pachetul complet. Statutul său de "dezvoltare și testare" nu înseamnă că este vulnerabil; dimpotrivă, este destul de stabil. Beneficii: Funcționalitatea optimă și cele mai recente caracteristici pot fi testate întotdeauna în avans. Dezavantaj - probabilitatea de a obține erori este mai mare în comparație cu versiunea stabilă.

Acesta din urmă (versiunea completă Ubuntu a Nginx) a avut caracteristicile și securitatea analizate într-o serie de teste și a obținut scoruri foarte bune. Rezultatul este un server web stabil și fiabil, care este potrivit pentru utilizarea ca server de comerț electronic.

Tipul de instalare Nginx

Începătorii trebuie să aplice corect parametrii de instalare pentru a implementa.

Există mai multe opțiuni pentru a instala Nginx Ubuntu:

  1. Dintr-un pachet Debian/Ubuntu pre-construit.
  2. Dintr-un pachet de depozit Nginx gata de utilizare.
  3. Din sursă.

Instalarea dintr-un pachet standard (Debian/Ubuntu) cu kernel și modul implicit este foarte ușoară, împreună cu un proces automat de actualizare. Procesul este realizat de un program format dintr-o versiune stabilă și mai multe opțiuni de module.

Instalarea Ubuntu Nginx dintr-un pachet de depozit este la fel de simplă ca și cum sistem de operare în mod implicit. Puteți alege dacă doriți să utilizați versiunea stabilă sau versiunea de bază. De asemenea, este posibilă o mai mare flexibilitate în selectarea modulului dinamic care urmează să fie aplicat. Acesta din urmă este diferit de cel static, dar unele dintre ele pot fi convertite în dinamice. Procesul de actualizare a kernel-ului pentru Nginx este destul de complex, așa că trebuie făcut manual.

Pachet prefabricat

Dacă este nevoie de mai multă flexibilitate, instalarea Nginx de la sursă este alegerea corectă. Toate modulele sunt utilizate după cum este necesar și codul de bază poate fi modificat. Rularea Nginx instalează Ubuntu dintr-un pachet pre-construit:

Pachet prefabricat

Pentru a instala această schemă în mod implicit, verificați Ubuntu sau Debian Web pentru a vedea ce module sunt încorporate în Full. Apoi instalați software-ul din pachetul Repository preinstalat.

software dintr-un pachet Repository preinstalat

Se adaugă apoi următoarea cheie de semnătură pentru a se asigura că depozitul și pachetele sunt listate în trusa de chei a managerului (apt).

Algoritm de instalare:

  1. Apoi adăugați depozitul Nginx implicit din pachetul Ubuntu sau Debian.
  2. Pentru a face acest lucru, definiți depozitul în fișierul pachetului de surse.lista.
  3. Mai întâi deschideți fișierul sursă.lista în consola nano ca editor de fișiere.
  4. După deschideți fișierul adăugați un depozit la linia de jos cu un șablon generic.
  5. Salvați modificările apăsând Ctrl + x → Y → Enter.
  6. După aceasta, puteți instala Nginx în modul obișnuit.

versiunea stabilă a serverului Nginx Ubuntu va fi instalată pe sistem.

Unde:

  • {OS Linux} - Ubuntu sau Debian;
  • {codename} - numele sistemului de operare pe care îl utilizați.

Numele de cod poate fi văzut în tabelul următor.

Nume de cod

Instalați codul.

Codul de instalare

Configurarea NGINX Ubuntu 18.04

În prezent, cel mai bun mod de a instala modelul 18.04, este de a folosi versiunea inclusă în depozitul Ubuntu.

Fișierele de configurare NGINX sunt stocate în /etc/nginx/conf.d/. În mod normal, veți avea nevoie de un fișier separat în acest director pentru fiecare domeniu sau subdomeniu.

Algoritm pentru instalarea NGINX pe Ubuntu:

  1. Copiați fișierul implicit.
  2. Înlocuiește exemplul.com cu numele de domeniu al site-ului sau IP-ul public.
  3. Dezactivați fișierul implicit adăugând .Adăugați la numele său.
  4. Deschideți un fișier într-un editor.
  5. Înlocuiți numele de domeniu sau IP-ul site-ului în directivă.
  6. Pentru conținutul standard, cum ar fi instalațiile WordPress sau fișierele statice, înlocuiți calea din directiva root cu calea conținutului site-ului.
Algoritmul de instalare NGINX în Ubuntu

Testarea NGINX:

  1. Verificați dacă există erori în configurație.
  2. Versiunea Reboot.
  3. Navigați la IP Linode în browserul dumneavoastră și va apărea pagina NGINX.

Adăugați un nou site pe server

Software-ul LEMP stack prezintă un grup care poate fi utilizat pentru a gestiona pagini și aplicații dinamice. Datele interne sunt stocate în MySQL, iar procesele dinamice sunt gestionate de PHP Ubuntu Nginx.

Cerințe:

  1. Clienți SSH, cum ar fi Bitvise sau Putty, cu instrucțiuni privind modul de utilizare a acestora.
  2. Cunoștințe de bază ale comenzilor Unix obișnuite pentru SSH la server.
  3. Server sau VPS cu cel puțin 256MB RAM (OpenVZ). Se recomandă să se utilizeze 512 MB dacă se utilizează KVM sau Xen.
  4. Ubuntu 16.04 între 32 sau 64 de biți.

Precondiții:

  1. Oferă serverul Ubuntu.
  2. Instalarea completă a LAMP (Ubuntu Nginx Apache, MySQL, Perl / PHP / Python) pe serverul Ubuntu.

Crearea unui director web

Directoarele web sunt liste sau dosare de pe server în care sunt stocate sau găzduite toate fișierele. Conectați-vă folosind Terminal, Putty și Bitvise.

Următorul necesită director. Mai jos, această comandă creează două directoare pentru două site-uri, de exemplu, dacă trebuie adăugat doar un singur site, specificați doar o dată în loc de domain1.tld și domeniu2.tld prescrie domeniul dorit. Apoi, setați proprietarul directorului la www-data și modificați recursiv drepturile de acces la director. Plasați următorul, apoi creați un index de fișier de test.html, salvați și ieșiți din editor apăsând Control+O, apoi Cotrol+X.

Crearea unui director web

Crearea serviciului de blocuri

Fișierul de bloc al serverului nginx este stocat intern, apoi plasați această configurație acolo și înlocuiți "xxxx" cu propria adresă IPv4 sau IPv6. Salvați și ieșiți din editor apăsând Control+O, apoi Control+X. Faceți același lucru pentru celălalt site.

Crearea serviciului de blocuri

Apoi puteți activa fiecare server de blocuri. În scopuri de securitate, editați nginx.Conf și activați opțiunea: "Name hash size", eliminați simbolul de comentariu (#). Apăsați Control+O pentru a salva și Control+X pentru a ieși din editor. Acum testați configurația și confirmați cu Ok.

În cele din urmă, reîncărcați sau reporniți serviciul. Apoi configurați datele domeniului DNS sau editați fișierul gazdă local de pe computer pentru a testa pachetul. Lansați un browser web și încercați să accesați VPS-ul prin numele de domeniu.

Plasarea unui server HTTP

Așezați un server HTTP

Serverul HTTP Nginx (Engine-X) este cel mai popular dintre colegii utilizați pe web. Este ușor, stabil, gata de utilizare și poate fi folosit de oricine pentru a construi site-uri web puternice și dinamice. De asemenea, poate acționa ca un proxy, ceea ce îl face o alegere excelentă pentru securizarea site-urilor web aglomerate și populare.

Instalați serverul HTTP Nginx:

  1. Instalarea serverului. Pachetele sunt disponibile din depozitul de software Ubuntu, toate, necesare pentru a face este să rulați comanda apt.
  2. După ce serverul este instalat, configurați firewall-ul pentru a permite traficul HTTP. Firewall-ul Ubuntu nu este activat în mod implicit. În unele cazuri, este activată automat din motive de securitate.
  3. Dacă firewall-ul este activat, comenzile de o singură linie de mai sus ar trebui să permită traficul HTTP atât pe portul 80, cât și pe portul 443. Dacă verificați starea firewall-ului, veți vedea că HTTP Full este permis de oriunde, inclusiv traficul v6.
  4. accesați pagina site-ului web Nginx în mod implicit sau navigați pe server sau pe IP-ul gazdei.
  5. La instalarea serverului Nginx HTTP, vor fi create dosare suplimentare. Acestea conțin fișiere de configurare, setări și celelalte directoare menționate mai sus, care sunt cele mai utilizate pe server.

Utilizarea unui proxy invers

Utilizarea unui proxy invers

Un proxy invers este un server care se află între aplicațiile interne și clienții externi, redirecționând cererile clienților. Deși multe aplicații comune, cum ar fi Node.js, pot acționa ca servere în sine, NGINX are o serie de caracteristici avansate de echilibrare a încărcăturii, de securitate și de accelerare, aceste caracteristici nu sunt prezente în majoritatea programelor dedicate. Utilizarea NGINX ca proxy invers vă permite să adăugați această funcționalitate la orice aplicație.

Pentru aceasta se folosește un nod simplu.js pentru a demonstra, cum se instalează NGINX ca proxy invers.

Instalarea proxy-ului:

  1. Acești pași instalează Mainline în Ubuntu din depozitul oficial NGINX Inc. Pentru alte distribuții, consultați ghidul administratorului pentru informații privind configurarea pentru mediile de producție.
  2. Deschideți /etc/apt/sources.list text editor și adăugați următoarea linie în partea de jos.
  3. Înlocuiți numele de cod din acest exemplu cu numele de cod al versiunii instalate.De exemplu, pentru Ubuntu Nginx php fpm cu numele Bionic Beaver.
  4. Importați cheia de semnătură a pachetului de depozit și adăugați-o la apt.
  5. Asigurați-vă că serverul este în funcțiune și că va fi pornit automat la repornire.

Exemplu de aplicație

Exemplu de aplicație

Utilizați curl pentru a încărca scriptul de instalare furnizat de NodeSource. Înlocuiți versiunea Node din comanda curl cu cea pe care o doriți.

Rulați scriptul:

  1. Scriptul apt-get update va rula automat, astfel încât să puteți instala Node imediat.js.
  2. Node Packet Manager (NPM) va fi despachetat împreună cu Node Packet Manager (NPM).js.
  3. Creați directorul de aplicații.
  4. Inițializarea aplicației Node.directorul js.
  5. Asumați toate valorile implicite atunci când vi se solicită.
  6. Instalarea Express.js: npm install --save express.
  7. Utilizați un editor de text pentru a crea și adăuga următorul conținut: app.js.
  8. Lansarea aplicației.
  9. Într-o fereastră de terminal separată, utilizați curl pentru a verifica dacă software-ul rulează.

Configurați Nodul.js setup

În acest moment, puteți configura Node.js, astfel încât să servească drept aplicație de exemplu pe un IP public Linode, permițând expunerea pe Internet. În schimb, instalați Ubuntu Nginx php pentru a redirecționa toate cererile de la IP-ul public către serverul care ascultă pe localhost.

Configurație de bază pentru NGINX cu reverse proxy: Creați un fișier, înlocuiți în acest exemplu.com, domeniu software sau adresă IP publică.

Porniți aplicația

Directiva proxy_pass reprezintă configurația proxy inversă. Acest lucru specifică faptul că toate cererile care se potrivesc cu blocul de locație, în acest caz calea rădăcină, ar trebui să fie redirecționate către portul 3000 pe localhost care rulează Node.js.

Procedura de reglare:

  1. Dezactivați sau eliminați pagina implicită Welcome to NGINX:sudo mv /etc/nginx/conf.d/default.conf /etc/nginx/conf.d/default.conf.dezactivat.
  2. Verificați configurația: sudo nginx -t.
  3. Dacă nu sunt raportate erori, reîncărcați unul nou:sudo nginx -s reload.
  4. Mergeți la adresa IP publică a Linode în browserul dumneavoastră, va apărea mesajul Hello World!
Setări avansate: link permanent

Pentru o aplicație proxy_pass simplă, directiva. Cu toate acestea, cele mai complexe pot necesita parametri suplimentari. De exemplu, Node.js este adesea folosit pentru acele cazuri care necesită o mulțime de interacțiune în timp real. Pentru a ajusta, dezactivați funcția de bufferizare Nginx Ubuntu ssl. Puteți modifica sau adăuga anteturi care să fie trimise împreună cu cererile proxy proxy_set_header. Această configurație utilizează variabila încorporată $remote_addr pentru a trimite adresa IP a clientului sursă către gazda proxy.

Unul dintre avantajele proxy-ului invers este configurarea ușoară a HTTPS cu un certificat TLS. Certbot este un instrument pentru a obține rapid certificate gratuite de la Let`s Encrypt. Puteți utiliza Certbot în Ubuntu 16.04, site-ul oficial conține instrucțiuni detaliate privind instalarea și utilizarea distribuțiilor de bază. Odată obținut prin Certbot, acesta va actualiza automat fișierele pentru a utiliza noul certificat.

Certbot va cere informații despre site. Răspunsurile vor fi salvate ca parte a certificatului.

Configurarea Node.js

Certbot va întreba, de asemenea, dacă traficul HTTP trebuie redirecționat automat către HTTPS. Vă recomandăm să selectați această opțiune. După ce instrumentul se termină, Certbot va salva cheile generate și certificatele emise în directorul /etc/letsencrypt/live/$domain, unde $domain este numele de domeniu introdus în timpul fazei de creare a certificatelor Certbot.

Certbot vă recomandă să specificați configurația serverului web în directorul de certificate implicit sau să creați legături simbolice. Cheile și certificatele nu trebuie mutate în alt director. În cele din urmă, Certbot va actualiza serverul pentru a utiliza noul certificat și, de asemenea, va redirecționa traficul HTTP către HTTPS dacă această opțiune este selectată.

Dacă aveți un firewall configurat pe Linode, puteți adăuga o regulă pentru a permite conexiuni de intrare și ieșire la serviciul HTTPS. În Ubuntu, UFW este un instrument simplu și utilizat pe scară largă pentru a gestiona regulile de firewall.

Servere HTTP pe partea serverului

Una dintre cerințele pentru implementarea unei aplicații sau a unui site web este de a avea un server web sau un server de tip server HTTP care să se ocupe de. Acesta din urmă stabilește conexiuni bidirecționale sau unidirecționale cu clientul și generează un răspuns la solicitările făcute. Prin urmare, este o parte esențială a infrastructurii web.

Din punct de vedere statistic, Nginx este un server web în creștere care atrage tot mai mulți webmasteri din întreaga lume. În comparație cu Apache și alte servere web, Nginx este net superior în ceea ce privește viteza de procesare a sesiunilor simultane, timpul de răspuns și utilizarea resurselor. Are de-a face cu arhitectura și cu gestionarea inteligentă a conexiunilor. Un alt avantaj oferit de Nginx este arhitectura asincronă, care îmbunătățește gestionarea conexiunilor concurente.

Articole pe această temă