Ak chcete spravovať svoju lokalitu na lokálnom serveri, musíte nainštalovať mnoho ďalších komponentov, ktoré organizujú jediný systém, ktorý funguje hladko a bez akýchkoľvek chýb. Jednou z hlavných zložiek takejto štruktúry možno považovať webový server. Používatelia najčastejšie uprednostňujú použitie Apache kvôli jeho jednoduchosti a flexibilite, ako aj možnosti pripojenia externých modulov. Inštalácia a základná konfigurácia však nie sú rýchlym procesom a pre niektorých dokonca zložitým procesom, preto by sme o nich chceli hovoriť podrobnejšie a ako príklad uvádzame distribúciu CentOS 7.
Nainštalujte si Apache na CentOS 7
Štruktúra dnešného článku bude fázovaná tak, aby aj ten najnáročnejší používateľ pochopil, ako presne prebieha inštalácia a príprava príslušného webového servera. Hneď si vysvetlíme, že neposkytujeme príručky pre podrobnú konfiguráciu Apache, pretože to závisí od osobných preferencií používateľa a zvyšných dôležitých súčastí, ktoré sú k dispozícii. Tieto informácie vždy odporúčame prečítať si v oficiálnej dokumentácii.
Krok 1: príprava a inštalácia
Začnime ihneď inštaláciou komponentov Apache a pridaním všetkých podporných služieb. Navrhujeme na to použiť distribučné úložisko, pretože sa tam vždy nahráva najnovšia stabilná verzia softvéru a samotný proces inštalácie nezaberie veľa času.
- Bež „Terminál“, napríklad prostredníctvom ikony v sekcii Obľúbené.
- Ak ste si v počítači predtým nainštalovali Apache alebo ste omylom odstránili niektorú z jeho súčastí, stačí použiť príkaz
sudo yum aktualizácia httpd
jeho aktiváciou stlačením klávesu Zadajte. - Táto akcia sa koná v mene superužívateľa, čo znamená, že ju budete musieť potvrdiť zadaním hesla pre tento účet.
- Ak sú nainštalované aktualizácie, budete o tom informovaní. Ak balík chýba, zobrazí sa ďalšia správa zodpovedajúceho charakteru.
- Teraz si povieme niečo o inštalácii Apache od nuly. Ako sme už povedali, použijeme na to oficiálne úložiská, preto musíte zadať príkaz
sudo yum nainštalovať httpd
. - Keď sa zobrazí upozornenie na inštaláciu balíka, potvrďte ho výberom možnosti r.
- Počkajte na dokončenie inštalácie, počas tohto procesu nezatvárajte aktuálnu reláciu terminálu, aby nedošlo k prerušeniu procesu.
- Po dokončení sa okamžite odporúča spustiť webový server, čo je možné vykonať cez
sudo systemctl start httpd
. - Skontrolujte aktuálny stav pomocou
sudo systemctl status httpd
. - Oznámenie „Aktívne: aktívne (beží)“ znamená, že teraz Apache funguje správne a môžete pokračovať v jeho ďalšej konfigurácii.
To bolo všetko, čo bolo potrebné vedieť o základnom postupe nastavenia webového servera. Ako vidíte, nie je na tom nič zložité. Ďalej sa chceme baviť o interakcii s hlavnými službami a nastavení základnej konfigurácie. Musíte sa len rozhodnúť, či si preštudujete tieto pokyny, alebo či už máte znalosti konfigurácie a riadenia.
Krok 2: Spravujte službu Apache
Webový server v systéme CentOS, podobne ako iné distribúcie, beží na pozadí ako služba. Štandardne sa pridáva do spustenia a o aktivácii a kontrole stavu sme už hovorili skôr. Ak chcete tento nástroj spravovať, urobí sa to takto:
- Zadajte
sudo systemctl stop httpd
úplne zastaviť Apache. - Tento a všetky nasledujúce príkazy budú vykonané v mene superužívateľa, takže ho budete musieť potvrdiť zadaním príslušného hesla.
- Reštart sa uskutoční pomocou príkazu
sudo systemctl restart httpd
... Tento príkaz je relevantný v situáciách, keď server zlyhá alebo je potrebné ho reštartovať kvôli zvláštnostiam interakcie s ostatnými komponentmi. - Použite
sudo systemctl znovu načítať httpd
ak chcete, aby sa všetky zmeny vykonané po konfigurácii prejavili bez prerušenia niektorého z pripojení. - Velenie
sudo systemctl vypnúť httpd
odstráni Apache zo spustenia asudo systemctl povoliť httpd
vráti štandardný stav. Keď je navyše táto možnosť povolená, budete informovaní o vytvorení nového symbolického odkazu zodpovedného za túto možnosť.
Ako vidíte, stav služby riadia najštandardnejšie príkazy. Nebude ťažké si ich zapamätať, ak ste často nútení uchýliť sa k takýmto opatreniam počas správy siete, samostatného servera alebo akýchkoľvek aplikácií.
Krok 3: základná konfigurácia
Základná konfigurácia obsahuje nastavenie virtuálneho hostiteľa, čo je užitočné na izoláciu nastavení a hosťovanie rôznych domén na rovnakom serveri. Jeden štandardný virtuálny hostiteľ stačí, ak pracujete iba s jednou stránkou, ale pri registrácii ďalších domén sa budete musieť uchýliť k vytvoreniu ďalších parametrov. Teraz si vezmeme príklad štandardného virtuálneho hostiteľa a podľa potreby zmeníte jeho adresu.
- Začnime vytvorením adresára, kde budú uložené všetky podradené súbory virtuálneho hostiteľa. To sa deje pomocou príkazu
sudo mkdir -p /var/www/example.com/html
. - Vyžaduje sa tiež ďalší priečinok, do ktorého sa automaticky ukladajú protokoly udalostí. Ak ju chcete pridať, zadajte
sudo mkdir -p /var/www/example.com/log
. - Nastaviť predvolené povolenia pre adresár pomocou
sudo chown -R $ USER: $ USER /var/www/example.com/html
. - Dodatočne nastaviť a privilégiá pre každého používateľa vložením
sudo chmod -R 755 / var / www
. - Začnime vytvárať vzorovú stránku predlohy, ktorá sa zobrazí pri kontrole stavu hostiteľa. Vytvorte nový textový súbor pomocou pohodlného editora, napríklad pomocou nano, mali by ste zadať
sudo nano /var/www/example.com/html/index.html
. - Po otvorení textového editora vás upozorní, že ide o nový súbor. Nerobte si starosti, takto by to malo byť. Špeciálne ho vytvárame nastavením príslušnej konfigurácie.
- Vložte kód nižšie a nahraďte štandardný pozdrav ľubovoľným textom. Ak chcete, môžete kompletne prepracovať štruktúru vytvorením stránky, ktorá vám vyhovuje.
<html>
<head>
<title>Welcome to Example.com!</title>
</head>
<body>
<h1>Success! The example.com virtual host is working!</h1>
</body>
</html></code>
- Uložte zmeny kliknutím na Ctrl + Oa potom opustite textový editor pomocou Ctrl + X.
- Boli to iba predbežné nastavenia. Teraz poďme k samotnému virtuálnemu hostiteľovi: najskôr musíte určiť priečinky pre jeho ukladanie. Ak to chcete urobiť, zadajte
sudo mkdir / etc / httpd / sites-available / etc / httpd / sites-enabled
. - Potom povedzte webovému serveru, že teraz musí komunikovať s ostatnými komponentmi. Táto úloha sa vykonáva úpravou hlavného konfiguračného súboru. Spustite ho cez textový editor zadaním
sudo nano /etc/httpd/conf/httpd.conf
. - Prejdite na koniec zoznamu a vložte riadok
IncludeOptional sites enabled / *. Conf
. - Pred ukončením textového editora nezabudnite uložiť všetky zmeny.
- Na vytvorenie samotného virtuálneho hostiteľa potrebujete ešte jeden konfiguračný súbor. Vytvorte to prostredníctvom
sudo nano /etc/httpd/sites-available/example.com.conf
. - Vložte tam nasledujúci obsah a požadované riadky nahraďte vlastným.
Názov servera 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/ziadavky.log kombinovane
- Ostáva iba aktivovať súbor vytvorením symbolického odkazu pomocou
sudo ln -s /etc/httpd/sites-available/example.com.conf /etc/httpd/sites-enabled/example.com.conf
.
Krok 4: Konfigurácia kontroly prístupu
Pokiaľ hovoríme o konfigurácii globálnych parametrov, je potrebné zabezpečiť riadenie prístupu s uvedením počtu používateľov, ktorí budú môcť vykonať zmeny v adresároch, o ktorých sa uvažuje skôr. Tento postup sa vykonáva pomocou štandardného nástroja SELinux zodpovedného za správu úrovní prístupu.
- Nastavte globálne nastavenie zabezpečenia pomocou
sudo setsebool -P httpd_unified 1
... Zabezpečí, aby sa so všetkými typmi procesov zaobchádzalo ako s jedným. - Ďalej sa odporúča skontrolovať aktuálne možnosti SELinuxu, ktoré boli poskytované automaticky. Ak to chcete urobiť, napíšte
sudo ls -dZ /var/www/example.com/log/
. - Vo výsledku sa vám zobrazí obsah drwxr-xr-x. root root unconfined_u: object_r: httpd_sys_content_t: s0 /var/www/example.com/log/... To znamená, že teraz môže Apache čítať iba tie súbory, ktoré boli vytvorené v nainštalovanom priečinku, v tomto poradí, budete musieť zmeniť konfiguráciu.
- Táto úloha sa vykonáva prostredníctvom
sudo semanage fcontext -a -t httpd_log_t "/var/www/example.com/log(/.*)?"
. - Uložte zmeny a vykonajte ich po reštarte servera zadaním
sudo restorecon -R -v /var/www/example.com/log
. - Teraz znova skontrolujte zmeny pomocou
sudo ls -dZ /var/www/example.com/log/
. - Ako vidíte, výsledný výstup je vo forme drwxr-xr-x. root root unconfined_u: object_r: httpd_log_t: s0 /var/www/example.com/log, preto je všetko pravda.
- Zostáva iba otestovať všetky zmeny. Ak to chcete urobiť, zadajte
sudo systemctl restart httpd
a kliknite na Zadajte. - Akciu potvrďte heslom superužívateľa.
- Zadaním zadajte znova požiadavku na katalóg
ls -lZ /var/www/example.com/log
... Ak je zobrazený obsah vo formáte-rw-r - r--. Chyba koreňového koreňa 1.log -rw-r - r--. 1 koreňový koreň 0 request.log
, to znamená, že všetky predchádzajúce nastavenia boli vykonané správne.
Poznali ste postup inštalácie a všeobecnú konfiguráciu webového servera Apache na serveri CentOS 7. Ako vidíte, samotná inštalácia nezaberie veľa času a všetky ťažkosti súvisia iba s konfiguráciou. Pokiaľ vám prezentovaný sprievodca zmenami parametrov a správou Apache nestačil, odporúčame vám preštudovať si oficiálnu dokumentáciu pomocou odkazu nižšie.