Nginx ubuntu: instalacija i konfiguracija

Nginx Ubuntu je web server otvorenog koda sa moćnim balansiranjem opterećenja, obrnutim proxyjem i funkcijama keširanja. Prvobitno je dizajniran da eliminiše skaliranje i kvarove istovremenosti na postojećim serverima. Asinhrona arhitektura zasnovana na događajima učinila ju je najpopularnijom i najefikasnijom.

Dvije verzije instalacije

Obično se biraju dve verzije Nginx Ubuntua otvorenog koda - osnovna i stabilna. Glavna verzija predstavlja mali deo kompletnog paketa. Status "razvojne i probne verzije" ne znači da je glavna ranjiva, naprotiv, prilično je stabilna. Njegove prednosti: uvijek možete unaprijed testirati optimalne funkcije i najnovije funkcije. Nedostatak je što je vjerovatnoća dobijanja grešaka veća u odnosu na stabilnu.

U potonjem (puna verzija Nginx Ubuntua), njegove funkcije i sigurnost analizirani su korištenjem niza testova i imaju veoma visoke pokazatelje. Kao rezultat toga, korisnik dobija stabilan i pouzdan web server koji je pogodan za upotrebu kao server e-trgovine.

Nginx Tip Instalacije

Početnici moraju pravilno primijeniti parametre instalacije za postavljanje servera.

Postoji nekoliko opcija za instaliranje Nginx Ubuntu:

  1. Iz gotovog Debian / Ubuntu paketa.
  2. Iz gotovog paketa Nginx repozitorija.
  3. Iz izvornog koda.

Instalacija iz gotovog paketa (Debian / Ubuntu) sa kernelom i podrazumevanim modulom je veoma jednostavna, zajedno sa procesom ažuriranja automatski. Proces obavlja program koji se sastoji od stabilne verzije i nekoliko opcija modula.

Instaliranje Nginx Ubuntu-a iz paketa repozitorija je jednostavno kao i od podrazumevani operativni sistem. Možete izabrati da koristite stabilnu verziju ili glavnu. Pored toga, fleksibilnije možete izabrati dinamički modul koji planirate koristiti. Ovo posljednje se razlikuje od statičkog modula, ali neki od njih se mogu pretvoriti u dinamičke. Za Nginx, proces ažuriranja kernela je prilično komplikovan, tako da se mora uraditi ručno.

Unaprijed sastavljeni paket

Ako vam je potrebna veća fleksibilnost, onda je instaliranje Nginx-a sa izvora pravi izbor. Svi moduli se koriste po potrebi, možete promijeniti glavni kod. Pokretanje Nginx instalirajte Ubuntu iz gotovog paketa:

Unaprijed sastavljen paket

Da biste postavili ovu šemu po defaultu, provjerite Ubuntu ili Debian Web da vidite koji su moduli ugrađeni u cijelosti. Zatim instalirajte softver iz unaprijed sastavljenog paketa repozitorija.

Softver iz unaprijed sastavljenog paketa repozitorija

Nakon toga, dodaje se sljedeći ključ za potpisivanje kako bi se osiguralo da su spremište i paketi navedeni u privjesku za ključeve menadžera (apt).

Algoritam instalacije:

  1. Zatim dodajte podrazumevani Nginx repozitorijum iz Ubuntu ili Debian paketa.
  2. Da biste to uradili, definišite Repozitorijum u izvorima.list paketna datoteka.
  3. Prvo otvorite izvore.lista datoteka u nano konzoli kao uređivač datoteka.
  4. Poslije otvaranje datoteka dodajte spremište u donji red sa zajedničkim predloškom.
  5. Sačuvajte promjene pritiskom na Ctrl + x → Y → Enter.
  6. Nakon toga, možete instalirajte Nginx na uobičajeni način.

Stabilna verzija Nginx Ubuntu servera biće instalirana u sistem.

Gde:

  • { Linux OS} - Ubuntu ili Debian;
  • {codename} - naziv korištenog operativnog sistema.

Kodno ime se može vidjeti u sljedećoj tabeli.

Šifrovano ime

Instalacioni Kod.

Instalacioni Kod

Konfigurisanje NGINX Ubuntu 18.04

Trenutno najbolji način za instaliranje modela 18.04 je korištenje verzije uključene u Ubuntu repozitorij.

NGINX konfiguracijske datoteke se čuvaju u / etc/nginx/conf.d/. U pravilu će vam biti potrebna zasebna datoteka u ovom direktoriju za svaku domenu ili poddomenu.

Nginx instalacioni algoritam u Ubuntu:

  1. Kopirajte uobičajeni fajl.
  2. Zamijenite primjer.com sa imenom domene web lokacije ili javnim IP-om.
  3. Onemogući datoteku po defaultu dodavanjem .onemogućeno u njegovo ime.
  4. Otvori datoteku u editoru.
  5. Zamijenite ime domene ili IP stranice u Direktivi.
  6. Za gotove sadržaje, na primjer, WordPress instalacije ili statičke datoteke, zamijenite putanju u osnovnoj Direktivi putem do sadržaja web lokacije.
Nginx instalacioni algoritam u Ubuntu

Nginx testiranje:

  1. Provjerite ima li konfiguracije grešaka.
  2. Ponovo učitaj verziju.
  3. Idite na IP Linode u pregledaču, nakon čega će se pojaviti Nginx stranica.

Dodavanje novog sajta na server

LEMP stack softver pokazuje grupu koja se može koristiti za obradu dinamičkih stranica i aplikacija. Interni podaci se čuvaju u MySQL-u, a dinamičkim procesima upravlja PHP Ubuntu Nginx.

Uslovi:

  1. SSH klijenti, kao što su Bitvise ili Putty, sa uputstvima kako da ih koriste.
  2. Osnovno poznavanje uobičajenih Unix naredbi za SSH na server.
  3. Server ili VPS sa minimalnim 256 MB RAM-a (OpenVZ). Preporučuje se upotreba 512 MB ako se koristi KVM ili Xen.
  4. Ubuntu 16.04 između 32 ili 64 bita.

Pozadina:

  1. Pruža Ubuntu server.
  2. Instalira punu lampu (Ubuntu Nginx Apache, MySQL, Perl / PHP / Python) na Ubuntu server.

Kreiranje web direktorija

Web direktoriji su liste ili fascikle na serveru u kojima su sve datoteke pohranjene ili hostovane. Unosi se koristeći Terminal, Putty i Bitvise.

Zatim vam je potreban direktorij. Ispod, ova komanda kreira dva direktorijuma za dve lokacije, na primer, ako treba da dodate samo jednu lokaciju, samo navedite jednom, umesto domain1.tld i domain2.TLD propisuje željeni domen. Zatim postavljaju vlasnika direktorija na www-podatke i rekurzivno mijenjaju prava pristupa direktoriju. Postavite sljedeću, a zatim kreirajte test indeksni fajl.html, sačuvajte i izađite iz uređivača pritiskom na Control+o, zatim Cotrol+X.

Kreiranje web direktorija

Kreiranje blok usluge

Nginx server blok fajl se čuva unutra, zatim stavite ovu konfiguraciju tamo i zamenite "xxxx" sopstvenom IPv4 ili IPv6 adresom. Sačuvajte i izađite iz uređivača pritiskom na Control+o, a zatim na Control+X. Nakon toga, obavljaju slične radnje za drugu lokaciju.

Kreiranje blok usluge

Tada možete aktivirati svaki blok servera. Iz sigurnosnih razloga, oni uređuju nginx.conf i aktivirajte opciju: "veličina heš memorije imena", izbrišite znak komentara (#). Pritisnite Control+o za spremanje i kontrolu+X za izlazak iz uređivača. Sada testirajte konfiguraciju i potvrdite u redu.

Na kraju, izvršite ponovno učitavanje ili ponovno pokretanje tako da se usluga ponovo pokrene. Zatim konfigurirajte podatke DNS domene ili uredite lokalnu datoteku hosta na računaru da biste testirali paket. Pokrenite web pretraživač i pokušajte pristupiti VPS-u putem imena domene.

Hosting HTTP servera

Hosting HTTP servera

Nginx HTTP server (Engine-X) je najpopularniji od analoga koji se koriste na Internetu. Lagan je, stabilan, spreman za rad, koji svako može koristiti za kreiranje moćnih i dinamičnih web stranica. Može poslužiti i kao proxy server, što ga čini odličnim izborom za sigurnost preuzetih i popularnih web stranica.

Instaliranje Nginx HTTP servera:

  1. Instalirajte server. Paketi se mogu dobiti u Ubuntu softverskom spremištu, sve, potrebno ti je to do is run the apt command.
  2. Nakon što je server instaliran, konfigurišite zaštitni zid da dozvoli HTTP saobraćaj. Ubuntu Firewall nije podrazumevano omogućen. U nekim slučajevima se automatski uključuje iz sigurnosnih razloga.
  3. Ako je zaštitni zid omogućen, date komande u jednoj liniji treba da dozvole HTTP saobraćaj i na port 80 i na port 443. Ako provjerite status vatrozida, možete vidjeti da je HTTP Full dozvoljen s bilo kojeg mjesta, uključujući V6 saobraćaj.
  4. Otvorite pristup stranici Nginx veb lokacije podrazumevano ili idite na IP servera ili hosta.
  5. Prilikom instaliranja Nginx HTTP servera, biće kreirane dodatne fascikle. Sadrže konfiguracijske datoteke, postavke i druge gore navedene direktorije, najčešće se koriste na serveru.

Korišćenje obrnutog proxyja

Korišćenje obrnutog proxyja

Reverzni proxy je server koji se nalazi između internih aplikacija i eksternih klijenata, preusmjeravajući zahtjeve klijenata. Iako su mnoge uobičajene aplikacije kao što su Node.js, mogu raditi kao serveri sami, NGINX ima niz naprednih funkcija balansiranja opterećenja, sigurnosti i ubrzanja, ove funkcije nisu dostupne u većini specijalizovanih programa. Korišćenje Nginxa kao obrnutog proxy servera omogućava vam da dodate ove funkcije bilo kojoj aplikaciji.

Za to se koristi jednostavan čvor.JS za demonstraciju, kako konfigurirati NGINX kao reverzni proxy server.

Instaliranje proxyja:

  1. Ovi koraci instaliraju Mainline u Ubuntu iz zvaničnog Nginx Inc repozitorija. Za druge distribucije, morate pročitati administratorski vodič da biste dobili informacije o konfiguraciji za proizvodna okruženja.
  2. Open/etc/apt / sources.list tekst editor i dodajte sljedeći red na dnu.
  3. Zamijenite kodno ime u ovom primjeru kodnim imenom instalirane verzije.Na primjer, za Ubuntu Nginx php fpm sa imenom Bionic Beaver, Bionic je propisan.
  4. Uvezite ključ za potpis paketa repozitorija i dodajte ga u apt.
  5. Provjerite je li server pokrenut i hoće li se automatski uključiti prilikom ponovnog pokretanja.

Primjer prijave

Primjer prijave

Upotrijebite curl za učitavanje instalacijske skripte koju pruža NodeSource. Zamijenite verziju Node u komandi curl onom koju treba postaviti.

Trči

  1. scenario: skripta apt-get update će se pokrenuti automatski, tako da možete odmah instalirati Node.js.
  2. Node Package Manager (NPM) će biti raspakovan zajedno sa Node-om.js.
  3. Kreirajte direktorij aplikacija.
  4. Inicijalizirajte node aplikaciju.js u katalogu.
  5. Prihvati sve uobičajene vrijednosti kada se to od vas zatraži.
  6. Instalirajte Express.js: npm install -- save express.
  7. Pomoću uređivača teksta kreirajte i dodajte sljedeći sadržaj: app.js.
  8. Pokreni program.
  9. U posebnom terminalnom prozoru, curl se koristi da bi se osiguralo da.

Radovi na konfiguraciji čvorova.js

U ovoj fazi možete konfigurirati Node.js tako da služi kao primer aplikacije na javnoj Linode IP adresi, što bi omogućilo da bude izloženo na Internetu. Umesto toga, odeljak instalira php Ubuntu Nginx za prosleđivanje svih zahteva sa javne IP adrese na server koji sluša localhost.

Osnovna konfiguracija za NGINX sa obrnutim proxyjem: kreirajte datoteku, zamijenite u ovom primjeru primjera.com, softverska domena ili javna IP adresa.

Pokreni program

Proxy_pass direktiva je obrnuta konfiguracija proxy-a. Označava da sve zahtjeve koji odgovaraju bloku lokacije, u ovom slučaju korijensku putanju, treba preusmjeriti na port 3000 na localhost-u sa pokrenutim čvorom.js.

Procedura podešavanja:

  1. Onemogućite ili izbrišite podrazumevanu dobrodošlicu na Nginx stranicu: sudo mv / etc/nginx/conf.d / uobičajeno.conf / etc/nginx / conf.d / uobičajeno.conf.isključeno.
  2. Provjerite konfiguraciju: sudo nginx-t.
  3. Ako se ne prijave greške, nova se ponovo učitava: sudo nginx-s reload.
  4. U pregledaču idite na javnu IP adresu Linode-a, pojaviće se poruka Hello World!
Dodatni parametri: Trajni link

Za jednostavnu proxy_pass aplikaciju dovoljna je direktiva. Međutim, za složenije mogu biti potrebni dodatni parametri. Na primjer, Node.js se često koristi za one slučajeve koji zahtijevaju mnogo interakcija u realnom vremenu. Da biste se prilagodili, onemogućite funkciju baferovanja Nginx Ubuntu ssl. Možete promijeniti ili dodati zaglavlja koja se prosljeđuju zajedno sa proxy zahtjevima proxy_set_header. Ova konfiguracija koristi ugrađenu varijablu $ remote_addr za slanje IP adrese izvornog klijenta na Proxy host.

Jedna od prednosti obrnutog proxy servera je jednostavnost konfigurisanja HTTPS-a sa TLS sertifikatom. Certbot je alat koji vam omogućava da brzo dobijete besplatne certifikate od Let`s Encrypt. Može li se Certbot koristiti u Ubuntu 16.04, Službena web stranica sadrži detaljna uputstva za instaliranje i korištenje glavnih distribucija. Nakon prijema Certifikati putem Certbot-a automatski će ažurirati datoteke za korištenje novog certifikata.

Certbot će tražiti informacije o sajtu. Odgovori će biti sačuvani kao deo sertifikata.

Konfiguriranje Čvor.js

Certbot će također pitati da li HTTP saobraćaj treba automatski preusmjeriti na HTTPS. Preporučuje se odabir ove opcije. Nakon završetka alata, Certbot će sačuvati generirane ključeve i izdate certifikate u/etc/letsencrypt/live / $domain directory, gdje je $domain naziv domene unesen u fazi kreiranja certbot certifikata.

Certbot preporučuje navođenje konfiguracije web servera u podrazumevanom direktorijumu sertifikata ili kreiranje simboličkih veza. Ključeve i certifikate ne treba premještati u drugi direktorij. Konačno, Certbot će ažurirati server da koristi novi certifikat i također preusmjeriti HTTP promet na HTTPS ako je ova opcija odabrana.

Ako je zaštitni zid konfiguriran na Linodeu, možete dodati njegovo pravilo da dozvolite dolazne i odlazne veze na HTTPS uslugu. U Ubuntuu, UFW je široko korišten i jednostavan alat za upravljanje pravilima vatrozida.

HTTP serveri na strani servera

Jedan od uslova za implementaciju aplikacije ili web stranice je prisustvo web ili HTTP servera na strani servera koji vrši obradu. Ovaj drugi uspostavlja dvosmjerne ili jednosmjerne veze sa klijentom i generiše odgovor na podnesene zahtjeve. Stoga je sastavni deo web infrastrukture.

Statistički gledano, Nginx je rastući web server koji privlači sve više webmastera širom svijeta. U poređenju sa Apacheom i drugim web serverima, Nginx je značajno superiorniji u brzini obrade istovremenih sesija, vremenu odziva i korišćenju resursa. Ovo je rezultat arhitekture i pametnog upravljanja vezom. Još jedna prednost koju nudi Nginx je asinhrona arhitektura, koja poboljšava održavanje istovremenih veza.