- 1 1. Sissejuhatus
- 2 2. Nginxi installimise juhised Ubuntus
- 3 3. Nginxi põhiseadistus Ubuntus
- 4 4. Nginxi käivitamine ja haldamine
- 5 5. Nginxi tulemüüri seadistamine ja turvalisuse suurendamine
- 6 6. Nginxi jõudluse optimeerimine ja tõrkeotsing
- 7 7. Kokkuvõte ja järgmised sammud
1. Sissejuhatus
Paljud soovivad kasutada Nginxi Ubuntu peal, kuid esimest korda sellega kokku puutudes võib olla keeruline teada, kust alustada. See artikkel selgitab samm-sammult Nginxi installimist, seadistamist ja haldamist Ubuntu keskkonnas, isegi algajatele arusaadavalt.
Mis on Nginx?
Nginx (hääldatakse “engine-x”) on tuntud kui suure jõudlusega HTTP-server ja pöördproksi server. Tänu oma kergusele ja paindlikkusele kasutatakse seda veebiserverites ja rakendustes üle maailma. Eriti iseloomulik on selle struktuur, mis talub suurt liiklust.
Nginxi kasutamise eelised Ubuntus
Ubuntu on populaarne Linuxi distributsioon ja sobib hästi Nginxiga. Kuna pakendihaldussüsteem (APT) on saadaval, on installimine ja uuendamine lihtne ning oodata on stabiilsust ja turvalisust.
Selle artikli lugemisel saate aru järgmistest asjadest:
- Kuidas installida Nginxi Ubuntu peale
- Põhilised seadistamise ja haldamise sammud
- Jõudluse optimeerimine ja tõrkeotsing
Liigume edasi tegeliku töö juurde.
2. Nginxi installimise juhised Ubuntus
Nginxi käivitamiseks Ubuntus tuleb see esmalt õigesti installida. Siin selgitame installiprotsessi lihtsalt arusaadaval viisil.
Vajalike pakettide kontrollimine
Enne installimise alustamist veenduge, et teie süsteem oleks ajakohane. Käivitage järgmised käsud:
sudo apt update
sudo apt upgrade
Nginxi installimine
Nginxi installimiseks sisestage järgmine käsk:
sudo apt install nginx
See käsk laadib Nginxi Ubuntu APT-repositooriumist automaatselt alla ja installib.
Installimise kinnitamine
Installimise õnnestumise kontrollimiseks vaadake Nginxi olekut järgmise käsuga:
sudo systemctl status nginx
Kui väljundis kuvatakse “active (running)”, on installimine edukas.
Tulemüüri seadistamine
Ubuntu sisaldab UFW-d (Uncomplicated Firewall), mida saab kasutada Nginxi suhtluse lubamiseks.
sudo ufw allow 'Nginx Full'
sudo ufw enable
Nüüd on Nginx valmis töötama pordidel 80 (HTTP) ja 443 (HTTPS).

3. Nginxi põhiseadistus Ubuntus
Nginxi installimisest üksi ei piisa. Järgmisena teeme põhiseadistused, et Nginxi tõhusalt kasutada.
Konfiguratsioonifailide asukoht ja põhistruktuur
Nginxi peamised konfiguratsioonifailid asuvad järgmistes kohtades:
- Põhiline konfiguratsioonifail:
/etc/nginx/nginx.conf
- Saidi-põhised konfiguratsioonifailid: kataloogis
/etc/nginx/sites-available/
Põhimõtteliselt luuakse virtuaalhosti konfiguratsioonifail kataloogi sites-available
ja seejärel luuakse sümboolne link kataloogi sites-enabled
.
Virtuaalhosti seadistamine
Virtuaalhosti seadistamine võimaldab teil hallata mitut domeeni või projekti ühel serveril. Järgmises näites seadistame example.com
.
sudo nano /etc/nginx/sites-available/example.com
Sisestage järgmine sisu:
server {
listen 80;
server_name example.com www.example.com;
root /var/www/example.com/html;
index index.html index.htm;
location / {
try_files $uri $uri/ =404;
}
}
Pärast salvestamist aktiveerige seaded järgmiste käskudega:
sudo ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl reload nginx
SSL/TLS seadistamine
Turvalise suhtluse tagamiseks seadistage SSL/TLS-sertifikaadid. Saate hankida tasuta sertifikaate Let’s Encrypti abil.
Esmalt installige certbot
:
sudo apt install certbot python3-certbot-nginx
Seejärel käivitage SSL-sertifikaadi hankimiseks ja automaatseks seadistamiseks järgmine käsk:
sudo certbot --nginx -d example.com -d www.example.com
Seadistage ka automaatne uuendamine, et sertifikaadid ei aeguks.
4. Nginxi käivitamine ja haldamine
Pärast Nginxi installimist ja põhiseadistamist peate õppima haldamistoimingud, nagu käivitamine, peatamine ja seadistuste muutmisel uuesti laadimine. See jaotis selgitab Nginxi haldamiseks vajalikke põhikäske ja kuidas tõrkeid lahendada.
Nginxi põhikäsud
Ubuntus haldate Nginxi olekut käsuga systemctl
. Järgnevalt on toodud peamised käsud:
- Nginxi käivitamine
sudo systemctl start nginx
- Nginxi peatamine
sudo systemctl stop nginx
- Nginxi taaskäivitamine
Suurte konfiguratsioonimuudatuste korral võib taaskäivitamine olla vajalik.
sudo systemctl restart nginx
- Nginxi uuesti laadimine
Konfiguratsioonifailide muutmisel saab neid rakendada ilma taaskäivitamiseta, teostades uuesti laadimise.
sudo systemctl reload nginx
- Nginxi oleku kontrollimine
Selleks, et kontrollida, kas see töötab korralikult, kasutage järgmist:
sudo systemctl status nginx
Nginxi automaatse käivitamise seadistamine
Nginxi automaatse käivitamise lubamine välistab vajaduse see pärast süsteemi taaskäivitamist käsitsi käivitada.
- Automaatse käivitamise lubamine
sudo systemctl enable nginx
- Automaatse käivitamise keelamine
Vajadusel keelamiseks:
sudo systemctl disable nginx
Logide kontrollimine ja tõrkeotsing
Kui Nginx ei tööta ootuspäraselt, kontrollige logisid, et tuvastada põhjus.
- Vealogide kontrollimine
Vealogid on salvestatud järgmisse asukohta:
sudo tail -f /var/log/nginx/error.log
- Juurdepääsulogide kontrollimine
Siit saate kontrollida kliendipäringute sisu:
sudo tail -f /var/log/nginx/access.log
Levinud probleemid ja lahendused
- Nginx ei käivitu
- Põhjus: Võimalik, et konfiguratsioonifailis on viga.
- Lahendus:
bash sudo nginx -t
Kontrollige selle käsuga konfiguratsioonifaili vigu ja parandage probleem.
- Muudatused ei rakendu
- Põhjus: Uuesti laadimist või taaskäivitamist ei ole tehtud.
- Lahendus:
Pärast konfiguratsioonimuudatusi käivitagesudo systemctl reload nginx
.
- Port ei ole avatud
- Põhjus: Tulemüüri seaded.
- Lahendus:
bash sudo ufw allow 'Nginx Full'
Neid samme järgides saate Nginxi põhihaldust usaldusväärselt teostada.

5. Nginxi tulemüüri seadistamine ja turvalisuse suurendamine
Turvalisus on Nginxi opereerimisel äärmiselt oluline. See jaotis selgitab portide seadistamist Ubuntu tulemüüri (UFW) abil ja kuidas suurendada Nginxi turvalisust.
Portide avamine UFW abil
UFW (Uncomplicated Firewall) on Ubuntu standardvarustusse kuuluv tulemüüri tööriist. Nginxi korrektseks tööks on vaja avada pordid 80 (HTTP) ja 443 (HTTPS).
- Praeguse UFW oleku kontrollimine
sudo ufw status
- Nginxi reeglite rakendamine
Avage vajalikud pordid järgmise käsuga:
sudo ufw allow 'Nginx Full'
- UFW aktiveerimine
Kui tulemüür on keelatud, aktiveerige see:
sudo ufw enable
Lisaseaded turvalisuse suurendamiseks
- Mittevajalike HTTP-meetodite keelamine
Serveri turvalisuse suurendamiseks keelake mittevajalikud HTTP-meetodid. Lisage järgmised seaded Nginxi konfiguratsioonifaili:
if ($request_method !~ ^(GET|POST|HEAD)$) {
return 444;
}
- Kataloogide loendi keelamine
Selleks, et kataloogi sisu ei oleks avalikult nähtav, lisage konfiguratsioonifaili järgmine seade:
autoindex off;
- SSL/TLS-i tugevdamine
Tugeva krüpteerimismeetodi kasutamiseks lisage SSL-seadetesse järgmine:
ssl_protocols TLSv1.2 TLSv1.3;
ssl_prefer_server_ciphers on;
ssl_ciphers HIGH:!aNULL:!MD5;
6. Nginxi jõudluse optimeerimine ja tõrkeotsing
Nginx on laialdaselt kasutatav suure jõudlusega veebiserver, kuid õige häälestamisega saab selle jõudlust veelgi parandada. See jaotis selgitab, kuidas parandada Nginxi jõudlust ja lahendada levinud probleeme.
Jõudluse optimeerimine
1. Töötajaprotsesside seadistamine
Nginx kasutab mitmeprotsessilist arhitektuuri ja jõudlust saab optimeerida, seadistades sobiva arvu töötajaprotsesse.
Redigeerige konfiguratsioonifaili /etc/nginx/nginx.conf
:
worker_processes auto;
auto
määramisel seadistatakse automaatselt optimaalne protsesside arv vastavalt serveri CPU-tuumade arvule.
2. Ühenduste arvu suurendamine töötajaprotsessi kohta
Vaikimisi on ühe töötajaprotsessi ühenduste arv piiratud. Selle väärtuse suurendamine parandab töötlemisvõimsust suure koormuse korral.
Kontrollige või lisage konfiguratsioonifaili järgmine rida:
worker_connections 1024;
3. HTTP/2 lubamine
HTTP/2 lubamine muudab brauseriga suhtluse tõhusamaks ja parandab veebisaidi laadimisaega.
Redigeerige faili /etc/nginx/sites-available/example.com
ja muutke listen
direktiivi järgmiselt:
listen 443 ssl http2;
Seejärel laadige Nginx uuesti:
sudo systemctl reload nginx
4. Sisu tihendamise seaded
Failide tihendamine ja edastamine vähendab andmemahtu ja parandab lehe laadimisaega.
Lisage või aktiveerige konfiguratsioonifailis järgmine:
gzip on;
gzip_types text/plain text/css application/json application/javascript text/xml application/xml application/xml+rss text/javascript;
5. Vahemälu seadistamine
Staatiliste failide vahemälu seadistamine vähendab samadele ressurssidele tehtavate päringute arvu.
Lisage serveriplokki järgmine:
location ~* .(jpg|jpeg|png|gif|ico|css|js|woff|woff2|ttf|svg)$ {
expires 30d;
access_log off;
}
Levinud probleemide lahendamine
1. Suure koormuse korral on päringute töötlemine aeglane
- Põhjus
Töötajaprotsessid või ühenduste arv on sageli valesti seadistatud. - Lahendus
- Reguleerige töötajaprotsesside ja töötajate ühenduste arvu.
- Vajadusel võtke kasutusele koormuse jaotamine (load balancer).
2. Kuvatakse veakood 403 Forbidden
- Põhjus
- Nginxi konfiguratsioonifailis on
root
direktiivi tee vale. - Kataloogide või failide õigused on valed.
- Lahendus
- Kontrollige konfiguratsioonifailis
root
direktiivi ja määrake õige tee. - Parandage õigused järgmise käsuga:
bash sudo chmod -R 755 /var/www/example.com/html sudo chown -R www-data:www-data /var/www/example.com/html
3. Server aegub
- Põhjus
- Kliendipäringute töötlemiseks kulub liiga kaua aega.
- Lahendus
Reguleerige ajalõpu aega. Lisage või muutke konfiguratsioonifailis järgmist:
proxy_read_timeout 300;
proxy_connect_timeout 300;
proxy_send_timeout 300;
4. Nginxi taaskäivitamisel ilmneb viga
- Põhjus
Konfiguratsioonifailis on viga. - Lahendus
Enne seadistuste salvestamist teostage süntaksi kontroll järgmise käsuga:
sudo nginx -t
Nende sammude järgimine aitab teil maksimeerida Nginxi jõudlust ja lahendada levinud probleeme.

7. Kokkuvõte ja järgmised sammud
Selles artiklis selgitasime üksikasjalikult, kuidas Nginxi Ubuntus installida, tõhusalt seadistada ja hallata. Vaatame üle iga jaotise sisu ja anname nõu järgmiste sammude jaoks.
Kogu artikli ülevaade
1. Nginxi installimise juhised Ubuntus
- Õppisime, kuidas valmistada ette vajalikud paketid ja installida Nginx APT abil.
- Seadistasime tulemüüri (UFW), et lubada Nginxi suhtlust.
2. Põhiseadistus
- Saime aru konfiguratsioonifailide asukohast ja struktuurist ning õppisime virtuaalhostide ja SSL/TLS-i seadistamise samme.
- Omandasime praktilised seadistamise meetodid tegelike koodinäidete kaudu.
3. Käivitamine ja haldamine
- Mõistsime põhilisi toiminguid, nagu käivitamine, peatamine, taaskäivitamine ja uuesti laadimine.
- Õppisime ka logide kontrollimise meetodeid, mis on kasulikud tõrkeotsinguks.
4. Tulemüüri seadistamine ja turvalisuse suurendamine
- Rakendasime turvalisuse suurendamise meetmeid, nagu portide avamine UFW abil ja mittevajalike HTTP-meetodite keelamine.
5. Jõudluse optimeerimine ja tõrkeotsing
- Selgitasime konkreetseid optimeerimismeetodeid, nagu töötajaprotsesside optimeerimine, HTTP/2 lubamine ja vahemälu seadistamine.
- Õppisime levinud probleemide lahendamise viise, et saavutada stabiilsem töö.
Järgmised sammud
Selles artiklis tutvustatud põhiliste installi- ja seadistusjuhiste omandamisega peaksite olema saavutanud Nginxi käivitamise alused Ubuntus. Edasiste oskuste süvendamiseks kaaluge järgmisi samme:
- Täiustatud Nginxi seadistuste õppimine
- Õppige üksikasjalikke koormuse jaotamise (load balancing) ja pöördproksi seadistusi, et saavutada kõrgem haldustase.
- Proovige uusi kasutusjuhtumeid, kasutades mooduleid (nt Nginxi RTMP-moodul).
- Turvalisuse edasine tugevdamine
- Kaaluge veebirakenduste tulemüüri (WAF) rakendamist või turvalisusega seotud Nginxi moodulite kasutamist.
- Automaatika juurutamine
- Töö efektiivsuse parandamiseks õppige, kuidas automatiseerida Nginxi juurutamist ja haldamist, kasutades Ansible’it või Dockerit.
- Monitooringu- ja optimeerimistööriistade kasutamine
- Juurutage monitooringutööriistad nagu Prometheus ja Grafana, et visualiseerida Nginxi jõudlust reaalajas.
Lõpetuseks
Nginx on kiire ja paindlik veebiserver, mis õigesti kasutades suudab toetada paljusid kasutusjuhtumeid. Kasutage selles artiklis omandatud teadmisi ja rakendage neid oma projektides.
Kui tulevikus tekib uusi küsimusi või vajadusi, on soovitatav pöörduda Nginxi ametliku dokumentatsiooni või kogukonna ressursside poole. Loodan, et see artikkel on teile abiks veebiserveri haldamisel!