Če želite spletno mesto upravljati na lokalnem strežniku, morate namestiti številne dodatne komponente, ki organizirajo en sam sistem, ki deluje nemoteno in brez napak. Eden glavnih sestavnih delov takšne strukture lahko štejemo za spletni strežnik. Uporabniki najpogosteje raje uporabljajo Apache zaradi enostavnosti in prilagodljivosti konfiguracije ter možnosti povezovanja zunanjih modulov. Namestitev in osnovna konfiguracija pa nista hitra, za nekatere pa celo težka, zato bi o tem radi govorili podrobneje, za primer vzemimo distribucijo CentOS 7.
Namestite Apache na CentOS 7
Struktura današnjega članka bo postopna, tako da bo tudi najbolj nadobuden uporabnik natančno razumel, kako poteka namestitev in priprava zadevnega spletnega strežnika. Takoj pojasnimo, da ne zagotavljamo navodil za podrobno konfiguracijo Apacheja, saj je to odvisno od osebnih želja uporabnika in preostalih pomembnih komponent. Za te informacije priporočamo, da se vedno sklicujete na uradno dokumentacijo.
1. korak: priprava in namestitev
Začnimo takoj z namestitvijo komponent Apache in dodajanjem vseh podpornih storitev. Za to predlagamo uporabo skladišča distribucije, saj je tam vedno naložena najnovejša stabilna različica programske opreme, sam postopek namestitve pa ne traja veliko časa.
- Teči "Terminal"na primer prek ikone v razdelku Priljubljene.
- Če ste Apache že namestili v računalnik ali ste pomotoma odstranili eno od njegovih komponent, preprosto uporabite ukaz
sudo yum posodobitev httpd
s pritiskom na tipko Enter. - To dejanje se izvede v imenu super uporabnika, kar pomeni, da ga boste morali potrditi z navedbo gesla za ta račun.
- Če so nameščene posodobitve, boste o tem obveščeni, če paket manjka, pa se prikaže novo sporočilo ustrezne narave.
- Zdaj pa se pogovorimo o namestitvi Apacheja iz nič. Kot smo že rekli, bomo za to uporabili uradna skladišča, zato morate vnesti ukaz
sudo yum namestite httpd
. - Ko se prikaže obvestilo o namestitvi paketa, ga potrdite z izbiro možnosti y.
- Počakajte, da se namestitev konča, med tem pa ne zaprite trenutne seje terminala, da ne bi prekinili postopka.
- Ko končate, je takoj priporočljivo zagnati spletni strežnik, kar lahko storite prek
sudo systemctl start httpd
. - Preverite trenutno stanje prek
sudo systemctl status httpd
. - Obvestilo "Aktivno: aktivno (v teku)" pomeni, da Apache zdaj deluje pravilno in lahko nadaljujete z njegovo nadaljnjo konfiguracijo.
To je bilo vse, kar je bilo treba vedeti o osnovnem postopku namestitve spletnega strežnika. Kot vidite, v tem ni nič zapletenega. Nato se želimo pogovoriti o interakciji z glavnimi storitvami in nastavitvi osnovne konfiguracije, vi pa se morate odločiti, ali boste preučili ta navodila ali že poznate konfiguracijo in upravljanje.
2. korak: Upravljanje storitve Apache
Spletni strežnik na CentOS-u, tako kot druge distribucije, deluje v ozadju kot storitev. Privzeto je dodan ob zagonu, o aktivaciji in preverjanju stanja pa smo že govorili prej. Če želite upravljati to orodje, potem to storite na naslednji način:
- Enter
sudo systemctl stop httpd
popolnoma ustaviti Apača. - Ta in vsi nadaljnji ukazi se bodo izvajali v imenu super uporabnika, zato ga boste morali potrditi z vnosom ustreznega gesla.
- Ponovni zagon se izvede z ukazom
sudo systemctl znova zaženite httpd
... Ta ukaz je pomemben v tistih situacijah, ko se strežnik zruši ali ga je treba znova zagnati zaradi posebnosti interakcije z drugimi komponentami. - Uporaba
sudo systemctl ponovno naloži httpd
če želite, da vse spremembe po konfiguraciji začnejo veljati, ne da bi prekinile katero koli povezavo. - Ukaz
sudo systemctl onemogoči httpd
odstrani Apache iz zagona insudo systemctl omogoči httpd
vrne standardno stanje. Ko je ta možnost omogočena, boste obveščeni o ustvarjanju nove simbolne povezave, odgovorne za ta parameter.
Kot lahko vidite, najbolj standardni ukazi nadzorujejo stanje storitve. Ne bo si jih težko zapomniti, če se boste med takšnimi ukrepi pogosto zatekli med upravljanjem omrežja, ločenega spletnega mesta ali kakršnih koli aplikacij.
3. korak: osnovna konfiguracija
Osnovna konfiguracija vključuje nastavitev navideznega gostitelja, kar je koristno za izolacijo nastavitev in gostovanje različnih domen na istem strežniku. En standardni navidezni gostitelj zadostuje, če imate opravka samo z enim spletnim mestom, pri registraciji drugih domen pa boste morali poseči po ustvarjanju dodatnih parametrov. Zdaj bomo za primer uporabili običajnega navideznega gostitelja in po potrebi boste spremenili njegov naslov.
- Začnimo z ustvarjanjem imenika, v katerem bodo shranjene vse podrejene datoteke navideznega gostitelja. To se naredi z ukazom
sudo mkdir -p /var/www/example.com/html
. - Potrebna je tudi dodatna mapa, kjer se bodo dnevniki dogodkov samodejno shranili. Če ga želite dodati, vnesite
sudo mkdir -p /var/www/example.com/log
. - Nastavite privzeta dovoljenja za imenik prek
sudo chown -R $ UPORABNIK: $ USER /var/www/example.com/html
. - Poleg tega nastavite in privilegije za vsakega uporabnika z vstavljanjem
sudo chmod -R 755 / var / www
. - Začnimo ustvarjati vzorčno glavno stran, ki bo prikazana pri preverjanju zdravstvenega stanja gostitelja. Ustvarite novo besedilno datoteko s priročnim urejevalnikom, na primer z uporabo nano, morate vnesti
sudo nano /var/www/example.com/html/index.html
. - Ko odprete urejevalnik besedil, boste obveščeni, da gre za novo datoteko. Ne skrbite, tako bi moralo biti. Ustvarimo ga namerno z nastavitvijo ustrezne konfiguracije.
- Tam prilepite spodnjo kodo in zamenjajte standardni pozdrav s katerim koli besedilom. Če želite, lahko popolnoma preoblikujete strukturo tako, da ustvarite stran, ki vam ustreza.
<html>
<head>
<title>Welcome to Example.com!</title>
</head>
<body>
<h1>Success! The example.com virtual host is working!</h1>
</body>
</html></code>
- Spremembe shranite s klikom na Ctrl + Oin nato pustite urejevalnik besedil prek Ctrl + X.
- To so bile le predhodne nastavitve. Zdaj pa pojdimo na sam navidezni gostitelj: najprej morate določiti mape za njegovo shranjevanje. Če želite to narediti, vnesite
sudo mkdir / etc / httpd / sites-available / etc / httpd / sites-enabled
. - Po tem povejte spletnemu strežniku, da mora zdaj komunicirati z drugimi komponentami. Ta naloga se izvede z urejanjem glavne konfiguracijske datoteke. Zaženite ga skozi urejevalnik besedil z določitvijo
sudo nano /etc/httpd/conf/httpd.conf
. - Spustite se na dno seznama in vstavite vrstico
IncludeO optional sites-enabled / *. Conf
. - Ne pozabite shraniti vseh sprememb, preden zapustite urejevalnik besedil.
- Če želite ustvariti samega navideznega gostitelja, potrebujete še eno konfiguracijsko datoteko. Ustvari ga prek
sudo nano /etc/httpd/sites-available/example.com.conf
. - Tja vstavite naslednjo vsebino in nadomestite zahtevane vrstice s svojo.
Ime strežnika www.example.com
ServerAlias example.com
DocumentRoot /var/www/example.com/html
ErrorLog /var/www/example.com/log/error.log
CustomLog /var/www/example.com/log/requests.log skupaj
- Datoteko ostane samo aktivirati z ustvarjanjem simbolične povezave prek
sudo ln -s /etc/httpd/sites-available/example.com.conf /etc/httpd/sites-enabled/example.com.conf
.
4. korak: Konfiguriranje nadzora dostopa
Če govorimo o konfiguriranju globalnih parametrov, je treba zagotoviti nadzor dostopa in določiti število uporabnikov, ki bodo lahko spreminjali imenike, obravnavane prej. Ta postopek se izvaja s standardnim orodjem SELinux, odgovornim za upravljanje ravni dostopa.
- Nastavite globalno varnostno nastavitev prek
sudo setsebool -P httpd_unified 1
... Zagotovil bo, da bodo vse vrste procesov obravnavane kot eno. - Nato je priporočljivo preveriti trenutne možnosti SELinux, ki so bile samodejno na voljo. Če želite to narediti, pišite
sudo ls -dZ /var/www/example.com/log/
. - Posledično boste videli vsebino drwxr-xr-x. root root unconfined_u: object_r: httpd_sys_content_t: s0 /var/www/example.com/log/... To pomeni, da lahko zdaj Apache bere samo tiste datoteke, ki so bile ustvarjene v nameščeni mapi, oziroma boste morali spremeniti konfiguracijo.
- Ta naloga se izvaja skozi
sudo semanage fcontext -a -t httpd_log_t "/var/www/example.com/log(/.*)?"
. - Shranite spremembe in jih vnesite po uveljavitvi po vnovičnem zagonu strežnika
sudo restorecon -R -v /var/www/example.com/log
. - Zdaj ponovno preverite spremembe
sudo ls -dZ /var/www/example.com/log/
. - Kot lahko vidite, je rezultat v obliki drwxr-xr-x. root root unconfined_u: object_r: httpd_log_t: s0 /var/www/example.com/logzato je vse res.
- Ostalo je le preizkusiti vse spremembe. Če želite to narediti, vnesite
sudo systemctl znova zaženite httpd
in kliknite Enter. - Dejanje potrdite z geslom super uporabnika.
- Znova ustvarite zahtevo za katalog s tipkanjem
ls -lZ /var/www/example.com/log
... Če je prikazana vsebina v obliki-rw-r - r--. 1 root root napaka.log -rw-r - r--. 1 korenski koren 0 vprašanj.log
, to pomeni, da so bile vse prejšnje nastavitve pravilno narejene.
Poznali ste postopek namestitve in splošno konfiguracijo spletnega strežnika Apache na CentOS 7. Kot lahko vidite, namestitev sama ne traja veliko časa, vse težave pa so povezane samo s konfiguracijo. Če vam predstavljeni vodnik o spreminjanju parametrov in upravljanju Apacheja ni bil dovolj, vam svetujemo, da preučite uradno dokumentacijo s spodnjo povezavo.