Nginx

Nginxi installimine ja seadistamine CentOS 8-s

Nginxi installimine ja seadistamine CentOS 8-s
Nginx on kiire ja kerge veebiserver. Nginxi konfiguratsioonifailid on tõesti lihtsad ja nendega on lihtne töötada. See on suurepärane alternatiiv Apache veebiserverile.  Selles artiklis näitan teile, kuidas Nginxi veebiserverit CentOS 8-s installida ja konfigureerida. Alustame siis.

Nginxi installimine:

Nginx on saadaval CentOS 8 ametlikus paketihoidlas. Niisiis, seda on väga lihtne installida.

Kõigepealt värskendage DNF-i paketi hoidla vahemälu järgmiselt:

$ sudo dnf makecache

Nüüd installige Nginx järgmise käsuga:

$ sudo dnf installige nginx

Installimise kinnitamiseks vajutage Y ja seejärel vajutage .

Nginx tuleks installida.

Nginxi teenuse haldamine:

Algselt, nginx teenus peaks olema mitteaktiivne (ei tööta) ja puudega (ei käivitu automaatselt käivitamisel).

$ sudo systemctl olek nginx

Võite alustada nginx teenust järgmiselt:

$ sudo systemctl start nginx

nginx teenus peaks olema jooksmine.

$ sudo systemctl olek nginx

Nüüd lisage nginx teenust süsteemi käivitamisel järgmiselt:

$ sudo systemctl lubab nginxi

Tulemüüri konfigureerimine:

Tulemüür tuleb konfigureerida, et lubada juurdepääs HTTP-porti 80 ja HTTPS-porti 443, et Nginxi veebiserverile juurde pääseda teistest võrgu arvutitest.

Saate lubada juurdepääsu HTTP- ja HTTPS-porti järgmise käsuga:

$ sudo tulemüür-cmd --add-service = http, https - püsiv

Nüüd muudatuste jõustumiseks käivitage järgmine käsk:

$ sudo tulemüür-cmd - uuesti laadida

Veebiserveri testimine:

Sellele juurdepääsu saamiseks peate teadma Nginxi veebiserveri IP-aadressi või domeeninime.

Nginxi veebiserveri IP-aadressi leiate järgmise käsuga:

$ ip a

Minu puhul on IP-aadress 192.168.20.175. Teie jaoks on see erinev. Niisiis, asendage see edaspidi kindlasti oma omaga.

Nüüd külastage aadressi http: // 192.168.20.175 oma veebibrauserist. Peaksite nägema järgmist lehte. See tähendab, et Nginxi veebiserver töötab.

Nginxi konfiguratsioonifailid:

Nginx veebiserveri konfiguratsioonifailid asuvad / etc / nginx / kataloogi.

$ puu / etc / nginx

/ etc / nginx / nginx.konf on peamine Nginxi konfiguratsioonifail.

Nginxi veebiserveri veebi juurkataloog on vaikimisi / usr / share / nginx / html /. Nii et siin peaksite oma veebisaidi faile hoidma.

Põhiserveri seadistamine:

Selles jaotises näitan teile, kuidas Nginxi põhiserverit seadistada.

Kõigepealt tehke Nginxi algse konfiguratsioonifaili varukoopia järgmise käsuga:

$ sudo mv -v / etc / nginx / nginx.conf / etc / nginx / nginx.konf.originaal

Nüüd looge uus Nginxi konfiguratsioonifail järgmiselt:

$ sudo nano / etc / nginx / nginx.konf

Sisestage nüüd järgmised read / etc / nginx / nginx.konf fail ja salvestage fail.

kasutaja nginx nginx;
töötaja_protsessid auto;
error_log / var / log / nginx / error.palk;
pid / run / nginx.pid;
 
sündmused
töötaja_ühendused 1024;

 
http
sisaldab / etc / nginx / mime.tüübid;
default_type application / octet-stream;
 
server
kuulata 80;
serveri_nimi näide.com www.näide.com;
juur / usr / share / nginx / html;
indeksindeks.HTML;
access_log / var / log / nginx / juurdepääs.palk;

Siin, kasutaja Valikut kasutatakse Nginxi käitatava kasutaja ja rühma määramiseks väärtuseks nginx vastavalt.

The error_log Valikut kasutatakse tõrke logifaili tee määramiseks / var / log / nginx / tõrge.logi. Siia salvestatakse Nginxi serveriga seotud vead.

Nginxi serveri peamine konfiguratsioon on määratletud server jaotis http jaotises. Saate määratleda mitu server jaotis http jaotis, kui vaja.

Aastal server jaotises,

kuulata suvandit kasutatakse Nginxi konfigureerimiseks veebipäringute 80. porti (HTTP-porti) kuulama.

serveri_nimi Valikut kasutatakse Nginxi veebiserveri ühe või mitme domeeninime määramiseks. Kui teie DNS-i seaded on õiged, saate Nginxi veebiserverile juurde pääseda nende domeeninimede abil.

juurdepääsupäevik kasutatakse juurdepääsu logifaili tee määramiseks / var / log / nginx / juurdepääs.logi. Kui keegi proovib Nginxi veebiserverile juurde pääseda, kuvatakse juurdepääsuteave (st.e. IP-aadress, URL, HTTP-olekukood) logitakse sellesse faili.

The asukoht Valikut kasutatakse Nginx veebiserveri juurkataloogi määramiseks.

Siin, juur kataloog on / usr / share / nginx / html /.

Siin tuleks hoida kõiki veebisaidi faile. The indeks valikukomplektid indeks.HTML vaikefailina, mida serveeritakse, kui konkreetset faili ei taotleta. Näiteks kui külastate veebisaiti http: // 192.168.20.175 / minufail.HTML, siis naasete teie Nginx minufail.HTML faili. Aga kui külastate http: // 192.168.20.175 /, siis saadab Nginx teile indeksi.HTML-faili, kuna konkreetset faili ei taotletud.

Nüüd eemaldage kõik failid / usr / share / nginx / html / kataloog (veebijuur) järgmiselt:

$ sudo rm -rfv / usr / share / nginx / html / *

Nüüd looge uus indeks.HTML faili / usr / share / nginx / html / kataloogi järgmiselt:

Nüüd tippige järgmised read indeks.HTML fail ja salvestage fail.

Tere, Maailm


© 2020 LinuxHint.com

Nüüd taaskäivitage nginx teenust järgmiselt:

$ sudo systemctl taaskäivitage nginx

Nüüd külastage aadressi http: // 192.168.20.175 oma veebibrauserist ja peaksite nägema järgmist lehte. Palju õnne! Olete seadistanud oma esimese Nginxi veebiserveri.

Vealehtede konfigureerimine:

Nginxis saate konfigureerida tõrke lehti. Näiteks kui leht / fail / kataloog pole saadaval, tagastatakse brauserisse HTTP olekukood 404. Saate määrata HTTP olekukoodi 404 jaoks kohandatud HTML-i tõrke lehe, mis tagastatakse brauserisse.

Selleks lisage veergu järgmine rida server jaotis nginx.konf faili.

server

error_page 404/404.HTML;

Nüüd looge fail 404.HTML Nginxi veebijuuris / usr / share / nginx / html / järgnevalt:

$ sudo nano / usr / share / nginx / html / 404.HTML

Nüüd tippige järgmised read 404.HTML ja salvestage fail.

Viga 404


lehte ei leitud


© 2020 LinuxHint.com

Nüüd taaskäivitage nginx teenust järgmiselt:

$ sudo systemctl taaskäivitage nginx

Proovige nüüd pääseda olematule teele (http: // 192.168.20.175 / nopage.HTML) ja peaksite nägema järgmist tõrke lehte.

Kui 404.HTML fail asub erinevas failisüsteemi teekonnas (ütleme nii, et / usr / share / nginx / html / errors / kataloog), saate URL-i kaardistada / 404.HTML järgmiselt:

server

error_page 404/404.HTML;
asukoht / 404.HTML
root / usr / share / nginx / html / vead;


Nüüd tehke uus kataloog  / usr / share / nginx / html / errors / järgnevalt:

$ sudo mkdir / usr / share / nginx / html / tõrked

Nüüd looge uus fail 404.HTML kataloogis / usr / share / nginx / html / errors / järgnevalt:

$ sudo nano / usr / share / nginx / html / errors / 404.HTML

Sisestage nüüd järgmised read 404.HTML fail ja salvestage fail.

LEHTE EI LEITUD


TAGASI KOJU

Nüüd taaskäivitage nginx teenust järgmiselt:

$ sudo systemctl taaskäivitage nginx

Proovige nüüd pääseda olematule teele (http: // 192.168.20.175 / nopage.HTML) ja peaksite nägema värskendatud tõrke lehte.

Samamoodi saate seada tõrke lehe teistele HTTP olekukoodidele.

Sama vealehe saate määrata ka mitme HTTP olekukoodi jaoks. Näiteks sama vealehe seadmiseks / 404.HTML HTTP olekukoodide jaoks 403 ja 404, kirjuta error_page järgmiselt:

vealeht 403 404/404.HTML;

Logide seadistamine:

Nginxis error_log ja juurdepääsupäevik suvandeid kasutatakse veateadete logimiseks ja teabele juurdepääsuks.

Vorming error_log ja juurdepääsupäevik valikud on:

error_log / path / to / error / log / file [valikuline: kohandatud logi nimi];
access_log / path / to / access / log / file [valikuline: kohandatud logi nimi];

Soovi korral saate määratleda oma tõrglogi ja juurdepääsulogivormingud.

Selleks kasutage log_vorming suvand http jaotises kohandatud logivormingu määratlemiseks järgmiselt.

http

log_format simple '[$ time_iso8601] $ request_method $ request_uri'
'[$ status] ($ request_time) -> $ bytes_sent bytes';

server

access_log / var / log / nginx / juurdepääs.logi lihtne;


Siin on logivormingu nimi lihtne. Mõnda nginxi muutujat kasutatakse kohandatud logivormingu määratlemiseks. Kõigi Nginxi muutujate kohta lisateabe saamiseks külastage manustatud Nginxi muutujate käsiraamatut.

Kohandatud logivorming tuleks lisada üksikute jutumärkidega. Logivormingut saab määratleda ühe või mitme reana. Olen selles artiklis näidanud, kuidas logivormingut mitmel real defineerida. Ühe rea logivorminguga pole teil probleeme, usaldage mind!

Kui logivorming lihtne on määratletud, juurdepääsupäevik Valikut kasutatakse selleks, et Nginxil kasutada seda juurdepääsulogina.

Samamoodi saate määrata kohandatud tõrglogi vormingu, kasutades error_log valik.

Selles artiklis olen konfigureerinud ainult juurdepääsulogi kohandatud logivormingu.

Nüüd taaskäivitage nginx teenust järgmiselt:

$ sudo systemctl taaskäivitage nginx

Nüüd saate juurdepääsu logifaili jälgida järgmiselt:

$ sudo tail -f / var / log / nginx / access.logi

Samuti saate tõrke logifaili jälgida järgmiselt:

$ sudo tail -f / var / log / nginx / error.logi

Soovi korral saate juurdepääsulogi ja tõrke logifaile korraga jälgida järgmiselt

$ sudo tail -f / var / log / nginx / tõrge, juurdepääs.logi

Nagu näete, kasutatakse uut juurdepääsulogi vormingut.

Teatud radadele juurdepääsu keelamine:

Regulaaravaldisi saate kasutada teatud URI-teede sobitamiseks ja juurdepääsu keelamiseks Nginxis.

Oletame, et teie veebisaiti haldab Git ja soovite keelata juurdepääsu veebisaidile .git / oma veebijuure kataloogi.

Selleks tippige väljale järgmised read server jaotis / etc / nging / nginx.konf fail:

server

asukoht ~ \.git
eitada kõiki;


Nagu näete, on juurdepääs mis tahes teele, mis sisaldab .git eitatakse.

Tihenduse seadistamine:

Veebisisu saate enne selle brauserisse saatmist tihendada zzip Nginx veebiserveri ribalaiuse kasutamise salvestamiseks.

Mul on mõned JPEG-pildid / usr / share / nginx / html / images / kataloogi.

Nendele piltidele pääsen juurde URI-teed kasutades / pildid.

Gzip-pakkimise lubamiseks ainult URI-teele jäävate JPEG-piltide jaoks / pildid, tippige server jaotis / etc / nginx / nginx.konf faili.

server

asukoht / pildid
gzip sisse;
gzip_comp_level 9;
gzip_min_length 100000;
gzip_types image / jpeg;


Siin, gzip_comp_level kasutatakse tihendustaseme määramiseks. See võib olla suvaline arv vahemikus 1 kuni 9. Mida kõrgem tase, seda väiksem on tihendatud fail.

Fail tihendatakse ainult siis, kui faili suurus on suurem gzip_min_length. Olen selles näites määranud selle väärtuseks umbes 100 KB. Nii et JPEG-faile, mis on väiksemad kui 100 KB, gzip-faile ei tihendata.

The  gzip_types kasutatakse pakitavate failide miimikatüübi määramiseks.

Mime tüübi leiate faililaienditest järgmiselt:

$ grep jpg / etc / nginx / mime.tüübid

Nagu näete, jaoks .jpg või .jpeg faililaiend, mime tüüp on pilt / JPEG.

Kasutades saate määrata ühe või mitu miimikatüüpi gzip_types valik.

Kui soovite määrata mitu miimikatüüpi, eraldage need tühikutega järgmiselt:

"
gzip_types image / jpeg image / png image / gif;

Nüüd taaskäivitage nginx teenust järgmiselt:

$ sudo systemctl taaskäivitage nginx

Nagu näete, saadab Nginx soovi korral brauserisse tihendatud pildifailid.

Nagu näete alloleval ekraanipildil, on tihendatud gzip-fail algsest failist väiksem.

$ sudo tail -f / var / log / nginx / access.logi

HTTPS-i lubamine:

SSL-i saate Nginxis lubada väga lihtsalt. Selles jaotises näitan teile, kuidas seada Nginxis ise allkirjastatud SSL-sertifikaat.

Esmalt navigeerige saidile / etc / ssl / kataloogi järgmiselt:

$ cd / etc / ssl

Nüüd genereerige SSL-võti server.võti ja tunnistus server.krt järgmise käsuga:

$ sudo openssl req -x509 -sõlmed -päevad 365 -newkey rsa: 2048 -keyout
server.võtmeväljaserver.krt

MÄRGE: Sul peab olema openssl selle toimimiseks installitud. Kui käsk openssl pole saadaval, installige openssl järgmise käsuga:

$ sudo dnf install openssl -y

Nüüd sisestage oma kahetäheline riigikood (st.e. USA USA, Ühendkuningriik Suurbritannia, Venemaa Venemaa, CN Hiina) ja vajutage .

Nüüd tippige oma osariigi / provintsi nimi ja vajutage .

Nüüd tippige oma linna nimi ja vajutage .

Nüüd tippige oma ettevõtte nimi ja vajutage .

Nüüd tippige oma sertifikaati kasutava ettevõtte organisatsiooniüksuse nimi ja vajutage .

Nüüd tippige oma Nginxi veebiserveri täielikult kvalifitseeritud domeeninimi (FQDN) ja vajutage . SSL-sertifikaat kehtib ainult siis, kui Nginxi veebiserverile pääseb juurde selle domeeninime abil.

Nüüd tippige oma e-posti aadress ja vajutage .

Teie SSL-sertifikaat peaks olema valmis.

SSL-sertifikaat ja võti tuleks genereerida / etc / ssl / kataloogi.

$ ls -lh

Nüüd avage Nginxi konfiguratsioonifail / etc / nginx / nginx.konf ja muutuda kuulata sadamasse 443 ja tippige järgmistesse ridadesse server jaotises.

server

ssl sisse;
ssl_certificate / etc / ssl / server.crt;
ssl_certificate_key / etc / ssl / server.võti;

Nüüd taaskäivitage nginx teenust järgmiselt:

$ sudo systemctl taaskäivitage nginx

Reaalses elus on teil DNS-i seadistamine õige. Kuid testimise eesmärgil olen seadistanud kohaliku failipõhise domeeninime arvutis, mida kasutasin Nginxi veebiserveri juurde pääsemiseks.

Kui soovite kaasa minna, avage / etc / hosts faili järgmiselt:

$ sudo nano / etc / hosts

Seejärel lisage reale järgmine rida / etc / hosts faili.

192.168.20.175 www.näide.com

Proovige nüüd külastada https: // www.näide.com ja peaksite nägema järgmist lehte. Sa näed Teie ühendus pole turvaline kuna see on ise allkirjastatud sertifikaat. See sobib ainult testimiseks.

Reaalses elus ostate SSL-sertifikaate sertifikaadiasutustelt ja kasutate neid. Nii et te ei näe seda tüüpi sõnumeid.

Nagu näete, teenis Nginx veebilehte HTTPS-i kaudu. Niisiis, SSL töötab.

SSL-i teave veebisaidil.näide.com.

HTTP-taotluste ümbersuunamine HTTPS-i:

Kui keegi külastab teie veebisaiti HTTP-protokolli kaudu (http: // www.näide.com või http: // 192.168.20.175) HTTPS-i asemel (https: // www.näide.com), ei soovi te HTTP-päringut tagasi lükata. Seda tehes kaotate külastaja. Mida peaksite tegelikult tegema, on suunata kasutaja SSL-toega saidile. Seda on tõesti lihtne teha.

Esmalt avage Nginxi konfiguratsioonifail / etc / nginx / nginx.konf ja loo uus server jaotis http jaotis järgmiselt:

http

server
kuulata 80;
serveri_nimi www.näide.com;
tagastage 301 https: // www.näide.com $ request_uri;


See on lõplik / etc / nginx / nginx.konf fail:

kasutaja nginx nginx;
töötaja_protsessid auto;
error_log / var / log / nginx / error.palk;
pid / run / nginx.pid;
sündmused
töötaja_ühendused 1024;

http
sisaldab / etc / nginx / mime.tüübid;
default_type application / octet-stream;
log_format simple '[$ time_iso8601] $ request_method $ request_uri'
'[$ status] ($ request_time) -> $ bytes_sent bytes';
 
server
kuulata 80;
serveri_nimi www.näide.com;
tagastage 301 https: // www.näide.com $ request_uri;

server
kuulata 443;
serveri_nimi www.näide.com;
ssl sisse;
ssl_certificate / etc / ssl / server.crt;
ssl_certificate_key / etc / ssl / server.võti;
access_log / var / log / nginx / juurdepääs.logi lihtne;
asukoht /
juur / usr / share / nginx / html;
indeksindeks.HTML;

asukoht / pildid
gzip sisse;
gzip_comp_level 9;
gzip_min_length 100000;
gzip_types image / jpeg;

error_page 404/404.HTML;
asukoht / 404.HTML
root / usr / share / nginx / html / vead;

asukoht ~ \.git
eitada kõiki;


Nüüd taaskäivitage nginx teenust järgmiselt:

$ sudo systemctl taaskäivitage nginx

Kui proovite nüüd juurde pääseda aadressile http: // 192.168.20.175 või http: // www.näide.com, teid suunatakse aadressile https: // www.näide.com.

Nii installite ja konfigureerite CentOS 8-s Nginxi veebiserveri. Täname selle artikli lugemise eest.

Viis parimat mängu püüdmise kaarti
Me kõik oleme YouTube'is voogesituse mänge näinud ja armastanud. PewDiePie, Jakesepticye ja Markiplier on vaid mõned tipptasemel mängijatest, kes on t...
Kuidas mängu Linuxis arendada
Kümme aastat tagasi ei osanud paljud Linuxi kasutajad ennustada, et nende lemmikoperatsioonisüsteem on ühel päeval populaarne kommertsvideomängude män...
Kommertsmängumootorite avatud lähtekoodiga sadamad
Tasuta, avatud lähtekoodiga ja platvormidevaheliste mängumootorite puhkusereise saab kasutada nii vanade kui ka mõnede üsna hiljutiste mängude pealkir...