Edellytykset:
Tässä oppaassa esitettyjen vaiheiden suorittamiseksi tarvitset seuraavat osat:
- Oikein määritetty Debian 12 -järjestelmä. Tarkista kuinka Debian asennetaan VirtualBox VM:ään .
- Pääsy ei-root-käyttäjälle, jolla on sudo-oikeudet. Lisätietoja: hallita sudo-oikeuksia käyttämällä /etc/sudoers Debianissa .
Nginx Debianissa
Kehittäjä ja ylläpitämä Debian-projekti , Debian on a suosittu , ilmainen ja avoimen lähdekoodin Linux-jakelu. Debian on tunnettu vakaudestaan, turvallisuudestaan ja yhteisön tuestaan. Debian 12 (koodinimi 'bookworm') on uusin vakaa julkaisu. Lisätietoja: päivitys Debian 11:stä Debian 12:een .
Nginx on ilmainen ja avoimen lähdekoodin verkkopalvelin, joka tunnetaan korkeasta suorituskyvystään, skaalautumisestaan, muistin tehokkuudestaan ja turvallisuudestaan. Lisäksi se voi toimia myös käänteisenä välityspalvelimena, kuormantasaajana, HTTP-välimuistina jne.
Debianissa Nginx on saatavilla suoraan virallisista pakettivarastoista. Se voi kuitenkin olla hieman vanhentunut tämän seurauksena Debianin paketin julkaisujakso . Onneksi Nginx tarjoaa virallisen Debian-repon uusimpien julkaisujen kanssa.
Tapa 1: Nginxin asentaminen Debian Reposta
Avaa ensin pääteikkuna ja päivitä APT-repo-välimuisti:
$ sudo osuva päivitys
Nginx on saatavana 'nginx'-pakettina:
$ apt show nginx
Asenna Nginx suorittamalla seuraava komento:
$ sudo apt Asentaa nginx
Tapa 2: Nginxin asentaminen Nginx Reposta
Nginx APT -repon määrittäminen tarjoaa Nginxin uusimman version. Se voi kuitenkin olla ristiriidassa muiden oletusrepon Nginx-pakettien kanssa.
Edellytysten asennus
Asenna ensin tarvittavat paketit:
$ sudo apt Asentaa curl gnupg2 ca-certificates lsb-release debian-archive-keyring
Tuodaan GPG-allekirjoitusavainta
Nginx-allekirjoitusavain tarvitaan, jotta APT voi tarkistaa ladattujen pakettien aitouden. Tartu allekirjoitusavaimeen:
$ curl https: // nginx.org / avaimet / nginx_signing.key | gpg --rakas | sudo tee / usr / Jaa / avaimenperät / nginx-archive-keyring.gpg > / kehittäjä / tyhjä
Tarkista, onko oikea avain tuotu:
$ gpg --kuivaharjoittelu --hiljainen --ei avaimenperää --tuonti --tuontivaihtoehdot tuonti-show / usr / Jaa / avaimenperät / nginx-archive-keyring.gpg
Tulosteen tulee tulostaa 573BFD6B3D8FBC641079A6ABABF5BD827BD9BF62 avaimen sormenjäljenä. Jos ei, poista tiedosto kohteesta /usr/share/keyrings/nginx-archive-keyring.gpg ja käynnistä prosessi uudelleen.
Lisätään Nginx APT Repo
Kun allekirjoitusavain on asennettu, voimme nyt lisätä Nginx-repon APT:hen. Nginx tarjoaa kaksi julkaisuhaaraa:
vakaa : Parempi yhteensopivuus kolmannen osapuolen moduulien kanssa. Vastaanottaa vain kriittiset korjaukset.
päälinja : Uudet ominaisuudet voivat vaikuttaa moduulien yhteensopivuuteen. Se saa kuitenkin enemmän virheenkorjauksia, tietoturvakorjauksia ja kriittisiä korjauksia.
Nginx suosittelee virallisesti päälinjahaaran käyttöönottoa kaikissa tapauksissa. Lisää Nginx-päälinjahaara suorittamalla seuraava komento:
$ kaiku 'deb [signed-by=/usr/share/keyrings/nginx-archive-keyring.gpg] http://nginx.org/packages/mainline/debian `lsb_release -cs' nginx' | sudo tee / jne / apt / sources.list.d / nginx.list
Jos haluat sen sijaan vakaan Nginx-haaran, suorita seuraava komento:
$ kaiku 'deb [signed-by=/usr/share/keyrings/nginx-archive-keyring.gpg] http://nginx.org/packages/debian `lsb_release -cs' nginx' | sudo tee / jne / apt / sources.list.d / nginx.list
Repon kiinnitys
Jos haluat pakottaa APT:n käyttämään Nginx-repoa käsitellessään Nginxiin liittyviä paketteja, otamme käyttöön repon kiinnityksen:
$ kaiku -Se on 'Paketti: * \n Pin: origin nginx.org \n Pin: vapauta o=nginx \n Pin-Priority: 900 \n ' | sudo tee / jne / apt / mieltymykset.d / 99nginx
Nginxin asennus
Kun uusi repo on määritetty, päivitä APT-repo-välimuisti:
$ sudo osuva päivitys
Katso Nginx-paketin tiedot:
$ apt show nginx
Asenna lopuksi Nginx:
$ sudo apt Asentaa nginx
Palomuurin säätö
Debianin mukana tulee esiasennettuna iptables (netfilter) -palomuuri. Käytön helpottamiseksi on kuitenkin suositeltavaa käyttää UFW palomuuri . Se on periaatteessa käyttäjäystävällisempi käyttöliittymä netfilterille.
Oletusarvoisesti UFW estää Nginxin pääsyn verkkoon. Jos haluat sallia sekä HTTP-/HTTPS-käytön, suorita seuraava komento:
$ sudo no salli 80 , 443 / tcp
Jos haluat vain HTTP-käytön, käytä sen sijaan seuraavaa komentoa:
$ sudo no salli 80 / tcp
Jos haluat vain HTTPS-käytön, käytä sen sijaan seuraavaa komentoa:
$ sudo no salli 443 / tcp
Tarkista, onko sääntöjen lisäys onnistunut:
$ sudo ufw tila
Nginx-asennuksen tarkistaminen
On olemassa pari tapaa, joilla voimme varmistaa, onko Nginx-asennus onnistunut. Tarkista ensin Nginx-palvelun tila:
$ sudo systemctl-tila nginx
Jos se ei ole käynnissä, käynnistä palvelin:
$ sudo systemctl käynnistä nginxAvaa nyt seuraava URL-osoite verkkoselaimessa:
$ http: // localhost_or_server_ip /
Sinun pitäisi laskeutua oletusarvoiselle Nginx-tervetulosivulle.
Nginx-prosessin hallinta
Asennuksen yhteydessä Nginx rekisteröi palvelun systemd:lle. Voimme helposti hallita Nginx-prosesseja palvelun avulla.
Nginx-tila
Seuraava komento palauttaa Nginxin tilan:
$ sudo systemctl-tila nginx
Nginxin pysäyttäminen
Seuraava komento pysäyttää Nginxin:
$ sudo systemctl stop nginx
Nginx käynnistyy
Jos Nginx ei ole käynnissä, käynnistä palvelin seuraavalla komennolla:
$ sudo systemctl käynnistä nginx
Ladataan Nginx uudelleen
Nginx ei vaadi täyttä uudelleenkäynnistystä tehdäkseen muutoksia kokoonpanoonsa. Siinä tapauksessa voimme ladata Nginx-palvelun uudelleen katkaisematta yhteyttä:
$ sudo systemctl lataa nginx uudelleenNginxin uudelleenkäynnistys
Käynnistä Nginx-palvelin uudelleen suorittamalla seuraava komento:
$ sudo systemctl käynnistä nginx uudelleenNginxin uudelleenlataus tai uudelleenkäynnistys
Jos et ole varma, ladataanko vai käynnistetäänkö Nginx uudelleen, käytä seuraavaa komentoa:
$ sudo systemctl reload-or-restart nginxTässä tapauksessa systemd päättää automaattisesti parhaan toimintatavan.
Bonusvinkit 1: Nginx Blocks
Samoin kuin Apachen virtuaaliset isännät, Nginx tukee myös useita isäntiä yhdellä palvelimella.
Tässä on valekokoonpano, joka käsittelee kahta virtuaalipalvelinta ( lähde ):
http {indeksiindeksi. html ;
palvelin {
palvelimen_nimi www. domain1 . kanssa ;
access_log lokit / domain1. pääsy . Hirsi pää ;
juuri / oli / www / domain1. kanssa / htdocs ;
}
palvelin {
palvelimen_nimi www. domain2 . kanssa ;
access_log lokit / domain2. pääsy . Hirsi pää ;
juuri / oli / www / domain2. kanssa / htdocs ;
}
}
Tiedosto sisältää useita lohkoja asetustiedostossa, joista jokainen kuvaa erilaisia ominaisuuksia. Tärkeimmät lohkot ovat palvelin ja sijaintilohkot:
- palvelin : Se kuvaa virtuaalipalvelinta, joka käsittelee tietyn tyyppisiä asiakaspyyntöjä. Useita virtuaalisia palvelimia varten voi olla useita palvelinlohkoja. Saapuvat yhteydet ohjataan eri palvelinlohkoihin pyydetyn toimialueen nimen, IP-osoitteen ja portin perusteella.
- sijainti : Se on palvelinlohkon alilohko. Siinä kuvataan, kuinka Nginxin tulee käsitellä eri resursseja koskevat saapuvat asiakaspyynnöt.
Nämä kokoonpanot on tallennettu tiedostoihin /etc/nginx/sites-available . Jokaiselle palvelinlohkolle voi olla yksilöllisiä tiedostoja. Konfiguraatioita sovelletaan, kun ne asetetaan alle /etc/nginx/sites-enabled . Yleensä käytettävissä olevien sivustojen määritystiedostot on linkitetty sivustoihin, jotka ovat käytössä.
Bonusvinkit 2: Tärkeitä Nginx-tiedostoja ja -hakemistoja
Tässä on lyhyt luettelo tärkeistä Nginx-tiedostoista ja hakemistoista:
- /etc/nginx : Päähakemisto, joka isännöi kaikkia Nginx-kokoonpanoja.
- /etc/nginx/sites-available : Se sisältää palvelinlohkotiedostot. Asetustiedostoja ei käytetä.
- /etc/nginx/sites-enabled : Se isännöi myös sivustokohtaisia palvelinlohkoja. Yleensä ne ovat symlinkejä saatavilla olevilta sivustoilta. Nginx käyttää aktiivisesti tämän hakemiston määrityksiä palvellakseen asiakaspyyntöjä.
- /etc/nginx/snippets : Se isännöi konfiguraatiofragmentteja, jotka voidaan toteuttaa muualla.
- /etc/nginx/ngnix.conf : Se on Nginxin ensisijainen määritystiedosto. Se käsittelee Nginxin globaalia käyttäytymistä.
Johtopäätös
Esittelimme erilaisia tapoja asentaa Nginx Debianiin. Keskustelimme myös lyhyesti Nginx-prosessien hallinnasta systemd: n avulla. Lisäksi käsittelimme lyhyesti Nginx-lohkoja ja sitä, kuinka Nginx voidaan konfiguroida palvelemaan useita virtuaalisia isäntiä.
Haluatko tietää lisää Nginxistä? Tutustu Nginx-alaluokka .