Zpět na blog

Instalace serveru Apache na Ubuntu 18.04: Návod jak na to

Instalace serveru Apache na Ubuntu 18.04: Návod jak na to

Úvod

Apache HTTP Server je open-source webový server od společnosti Apache Software Foundation. Je to software, který propojuje váš lokální server s webovými prohlížeči, jako je Firefox nebo Google Chrome. Toto připojení se používá k odesílání a přijímání souborů a dat.

Je to nejpopulárnější server na světě. Více než 40 % všech webových stránek na celosvětové síti běží na Apache HTTP. Důvody jeho popularity jsou vysoká míra přizpůsobitelnosti, skvělá integrační kapacita a spolehlivá podpora médií. Apache funguje na architektuře založené na modulech. Můžete upravovat jednotlivé moduly a přidávat či odebírat různé funkce. V tomto návodu vás provedeme instalací serveru Apache na Ubuntu 18.04.

Před instalací

Než začnete instalovat Apache, musíte se postarat o několik prerekvizit. Pro začátek se ujistěte, že již máte na lokálním serveru nakonfigurovaného uživatele bez oprávnění root s právy sudo. Další věcí, kterou budete potřebovat, je firewall. Musíte povolit základní firewall a zablokovat nepodstatné porty. Před zahájením instalace se přihlaste jako uživatel bez oprávnění root s těmito právy. Svůj server můžete snadno nainstalovat podle našeho návodu na nastavení serveru Ubuntu.

Jak nainstalovat webový server Apache na Ubuntu 18.04

Pokud máte splněné prerekvizity, můžete přejít k samotné instalaci. Webový server Apache můžete nainstalovat a prozkoumat v 6 jednoduchých krocích:

Krok 1: Instalace Apache

Určitě vás potěší, že Apache je již součástí Ubuntu. To znamená, že Apache můžete na svůj server nainstalovat pomocí běžných nástrojů pro správu balíčků. Je k dispozici jako výchozí software v repozitáři. Nejprve budete muset aktualizovat lokální index balíčků:

Tento příkaz zajistí, že se v indexu balíčků zobrazí nedávné změny z upstreamu. Dále musíme zadat příkaz k instalaci balíčku apache2:

Krok 2: Změna nastavení firewallu

Při plnění prerekvizit jste museli nastavit firewall UFW. Pokud jste postupovali podle pokynů, váš firewall bude blokovat přístup k serveru. Před spuštěním Apache musíme povolit přístup k serveru přes výchozí webové porty. V důsledku toho je nutné změnit nastavení firewallu.

Při instalaci se Apache zaregistruje u UFW. Výsledkem této registrace je vytvoření několika aplikačních profilů. Tyto profily pak můžete použít k povolení nebo zakázání přístupu k Apache přes firewall. Poté si tyto aplikace ufw zobrazte pomocí následujícího příkazu:

Uvidíte svůj aplikační profil v seznamu, jako je tento:

Apache Server ufw app list

Výše uvedený seznam ukazuje, že byly vytvořeny tři aplikační profily, a to Apache, Apache Full a Apache Secure. Zde jsou některé užitečné podrobnosti o každém z těchto profilů:

  • Apache:

Profil Apache dokáže otevřít pouze port 80. Tento port umožňuje běžný a nešifrovaný webový provoz.

  • Apache Full:

Profil Apache Full má schopnost otevřít port 80 i 443. Zatímco port 80 umožňuje běžný, nešifrovaný webový provoz, port 443 zajišťuje šifrovaný provoz TLS/SSL.

  • Apache Secure:

A konečně, Apache Secure otevírá pouze port 443. Jak bylo uvedeno výše, je zodpovědný za povolení webového provozu šifrovaného pomocí TLS nebo SSL.

Při výběru mezi těmito profily myslete na provoz, který máte nakonfigurovaný. Budete se chtít ujistit, že požadovaný provoz projde, a zároveň zvolit nejvíce omezující profil. Konfigurace SSL je v tuto chvíli mimo náš rozsah. Proto se prozatím zaměříme na provoz přicházející přes port 80. To znamená, že v tomto scénáři povolujeme aplikační profil ‘Apache’. Můžete tak učinit následovně:

Chcete-li změnu ověřit, zadejte následující:

Tento příkaz zobrazí výstup obsahující HTTP provoz, který má aktuálně povolen průchod. Uvidíte něco takového:

Apache Server firewall status

Tok provozu ukazuje, že požadovaný profil Apache byl aktivován. Přístup k webovému serveru byl povolen přes firewall.

Krok 3: Kontrola webového serveru

Instalace Apache je dokončena a nastavení firewallu bylo upraveno. Na konci tohoto procesu Ubuntu 18.04 automaticky spustí Apache. Dále musíte pomocí inicializačního systému systemd zkontrolovat, zda služba v daném okamžiku běží. Pokud se chcete dozvědět více o inicializačních systémech, můžete se podívat na náš návod, jak spravovat služby a jednotky Systemd pomocí Systemctl. Chcete-li zkontrolovat, zda služba běží, zadejte:

Výstup bude následující:

apache2 status

Ve výše uvedeném výstupu musíte hledat stav Active nebo running (aktivní nebo běžící). To ukazuje, že služba byla spuštěna a úspěšně běží. Existuje další, preferovanější způsob, jak otestovat fungování služby. Její stav můžete zkontrolovat vyžádáním stránky z Apache. Pomocí IP adresy vašeho serveru můžete ověřit, zda software běží na výchozí úvodní stránce Apache. Zde je příkaz, který můžete použít k získání IP adresy vašeho serveru, pokud ji ještě neznáte:

Tento příkaz zobrazí výsledek s několika IP adresami oddělenými mezerami. Otestujte každou z nich jednotlivě v prohlížeči. Dalším způsobem přístupu je získání vaší veřejné IP adresy. Můžete použít příkaz jako tento:

Tím se zobrazí vaše IP adresa, jak je viditelná z jiných míst na webu. Jakmile budete mít svou IP adresu, přejděte do webového prohlížeče. Do adresního řádku zadejte a spusťte následující:

Tím se otevře výchozí webová stránka Apache pro Ubuntu 18.04. Vypadá takto:

ubuntu homepage

Tato stránka obsahuje některé základní informace o vašich souborech a adresářích. Vzhledem k tomu, že se spustila po zadání adresy, znamená to, že Apache běží správně.

Krok 4: Základní správa v Apache

Ověření potvrzuje, že Apache běží a váš server je funkční. Nyní prozkoumáme některé základní příkazy, které můžete na serveru použít pro správu.

Výchozí konfigurace Apache jej spouští při každém spuštění serveru. Máte možnost toto nastavení zakázat. Zadejte:

Chcete-li tuto výchozí funkci znovu aktivovat, použijte tento příkaz:

Dále zadejte následující, pokud chcete server zastavit ručně:

Pokud jej chcete po zastavení znovu spustit, použijte příkaz:

Chcete-li server zastavit a znovu spustit, neboli jej v podstatě restartovat, zadejte:

Když server zastavíte, má tendenci ztratit všechna svá připojení. Jeho opětovné spuštění znamená, že tato připojení znovu najde a propojí. Pokud chcete, můžete Apache také znovu načíst (reload) bez ztráty připojení. To je užitečné zejména při provádění změn v konfiguraci. Chcete-li provést opětovné načtení bez přerušení připojení, zadejte následující:

Krok 5: Nastavení virtuálního hostitele

Ačkoli to není povinné, důrazně se doporučuje nastavit virtuální hostitele. Virtuální hostitelé jsou malé bloky na serveru, které obsahují skupiny konfiguračních údajů. Ze svého serveru můžete na jednom virtuálním hostiteli hostovat několik domén.

Ve výchozím nastavení, pokud používáte Apache na Ubuntu 18.04, bude aktivován jeden blok serveru, který bude obsluhovat dokumenty v adresáři /var/www/html. Toto nastavení budete chtít změnit, pokud hostujete více webů namísto jednoho jediného. Existuje však i jiná možnost, která funguje ještě lépe. Ponechte adresář /var/www/html nedotčený. Místo toho přejděte do /var/www/ a vytvořte adresářovou strukturu pro weby na vaší požadované doméně. Pokud to uděláte, adresář /var/www/html bude nakonfigurován jako výchozí adresář. V případě, že požadavek klienta neodpovídá žádnému z webů na vaší doméně, bude obsloužen odtud.

Poté se podíváme na to, jak můžete vytvořit novou doménu a s ní spojený adresář. Pro účely tohoto příkladu použijeme hypotetický název, your_domain. Nahraďte your_domain, kdekoli se v následujících pokynech vyskytuje, svým vlastním názvem domény. Pro začátek se podívejme, jak můžete vytvořit nový adresář pro your_domain:

Nyní musíte přiřadit vlastnictví adresáře. K tomuto účelu můžete použít proměnnou prostředí $USER:

Chcete-li pokračovat, oprávnění vašeho kořenového webového adresáře musí být správná. Pokud jste v konfiguraci neupravovali hodnotu umask, měla by být vaše oprávnění v pořádku. Pokud si však nejste jisti, můžete je vždy potvrdit pomocí:

Dále vytvoříme stránku index.html. Můžete použít nano jako my, nebo jakýkoli jiný editor, pokud máte nějaký oblíbený:

Přidejte tento ukázkový kód HTML do souboru index, poté jej uložte a zavřete:

Dalším krokem je vytvoření souboru virtuálního hostitele. Soubor virtuálního hostitele se všemi správnými direktivami je nezbytný k tomu, aby Apache mohl obsluhovat výše uvedený ukázkový obsah. Výchozí konfigurační soubor se nachází na adrese: /etc/apache2/sites-available/000-default.conf. Místo úpravy tohoto souboru vytvoříme nový na adrese: /etc/apache2/sites-available/your_domain.conf.

Podobně jako předtím přidáme ukázkovou konfiguraci. Tentokrát ji však aktualizujeme s ohledem na název domény a nový adresář, který jsme právě vytvořili. Přidejte tento blok, poté jej uložte a zavřete:

Jak můžete vidět výše, aktualizovali jsme také e-mail ServerAdmin. Toto je adresa, na které je k zastižení správce webu your_domain. Kromě toho jsme také aktualizovali DocumentRoot na nový adresář a přidali dvě nové direktivy. Tyto direktivy zahrnují ServerName a ServerAlias. ServerName se používá k nastavení základní domény. Základní doména se musí shodovat, aby definovala virtuálního hostitele. ServerAlias naopak poskytuje další názvy, které by se měly také shodovat, podobně jako základní název. Soubor můžete snadno povolit pomocí nástroje a2ensite:

Chcete-li zakázat výchozí web uvedený v souboru 000-default.conf, použijte tento příkaz:

Nyní, když je konfigurace připravena, můžete zkontrolovat chyby zadáním:

Pokud se nevyskytnou žádné chyby v konfiguraci, zobrazí se následující výstup:

Chcete-li změny použít, musíte restartovat server Apache podle předchozích pokynů:

Voila! Nastavili jste svůj virtuální hostitel a název domény. Chcete-li zkontrolovat, zda Apache skutečně obsluhuje your_domain, přejděte na http://your_domain.

Krok 6: Procházení souborů a adresářů

Úspěšně jste provedli základní konfiguraci serveru Apache. Kromě toho víte, jak můžete službu Apache spravovat. Dále můžete věnovat nějaký čas prozkoumání některých nejdůležitějších adresářů a souborů.

Obsah
  • /var/www/html

O tomto adresáři jsme již také mluvili. Obsahuje výchozí stránku Apache. Pokud chcete, můžete obsah této stránky změnit. Chcete-li tak učinit, budete muset upravit konfigurační soubory Apache.

Konfigurace serveru

 

  • /etc/apache2

Toto je hlavní konfigurační adresář Apache. To znamená, že tento adresář obsahuje všechny konfigurační soubory spojené s Apache.

  • /etc/apache2/apache2.conf

Jak napovídá dodatek na konci adresáře, jedná se o hlavní konfigurační soubor. Tento soubor načítá několik dalších souborů v adresáři a lze jej použít k provádění úprav v konfiguraci Apache. Pokud chcete provést jakoukoli změnu v konfiguraci serveru Apache, zde je místo, kde tyto změny provedete.

  • /etc/apache2/ports.conf

Jak napovídá název, tento soubor se týká portů, o kterých jsme mluvili dříve. Port 80 je ve výchozím nastavení povolen a port 443 se aktivuje při zavedení modulů obsahujících SSL. Tento soubor obsahuje podrobnosti o tom, které porty jsou otevřené a povolené.

  • /etc/apache2/sites-available/

Sem budou směřovat vaši virtuální hostitelé. V tomto adresáři se provádí veškerá konfigurace bloků serveru. Chcete-li bloky serveru povolit, musí být propojeny s jinými adresáři pomocí a2ensite. Apache bude mít přístup k souborům v tomto adresáři pouze tehdy, pokud byly povoleny propojením s adresářem sites-enabled.

  • /etc/apache2/sites-enabled/

Toto je adresář, kde se nacházejí povolené virtuální hostitelé. Jak jsme zmínili, hostitelé se povolí, když propojíte soubory v adresáři sites-available pomocí příkazu a2ensite. Soubory v tomto adresáři jsou důležité pro spuštění, opětovné načtení nebo kompilaci konfigurace Apache.

  • /etc/apache2/conf-available/, /etc/apache2/conf-enabled/

Tyto adresáře fungují podobně jako sites-available a sites-enabled. Chcete-li povolit soubory v adresáři conf-available, musíte použít příkaz a2enconf. Příkaz pro zakázání je a2disconf. Místo ukládání virtuálních hostitelů pro jednotlivé weby tyto adresáře obsahují podrobnosti o konfiguraci, které se netýkají virtuálního hostitele:

  • /etc/apache2/mods-available/, /etc/apache2/mods-enabled/

Tyto adresáře mají také podobný vztah jako předchozí dva příklady. Obsahují moduly, ty dostupné a ty povolené příkazem a2enmod. Chcete-li modul zakázat, můžete použít příkaz a2dismod. Soubory s příponou .load obsahují fragmenty, které mohou načíst daný modul. Soubory s příponou .conf obsahují příslušné podrobnosti o konfiguraci daného modulu.

Protokoly serveru

 

  • /var/log/apache2/access.log

Tento soubor protokolu obsahuje všechny požadavky odeslané na váš server. K tomu dochází ve výchozím nastavení. Máte možnost nakonfigurovat Apache tak, aby požadavky zaznamenával jinak.

  • /var/log/apache2/error.log

Toto je protokol chyb. Všechny chyby, které uděláte, jdou ve výchozím nastavení přímo do tohoto souboru. Podrobnosti o tom, jak se protokoly chyb zaznamenávají, můžete vidět pomocí direktivy LogLevel.

Závěr

Na závěr, podle výše uvedených kroků můžete snadno nainstalovat webový server Apache na svůj Ubuntu 18.04. Jakmile budete mít server ve svém systému, můžete prozkoumat různé možnosti, které na této platformě máte. K vytváření různých druhů obsahu můžete využít různé technologie. Tímto způsobem si na serveru můžete vytvořit jedinečné a přínosné prostředí.

Můžete se také naučit, jak zabezpečit svůj server Apache pomocí Let’s Encrypt podle našeho podrobného návodu. Pokud se chcete naučit, jak nainstalovat Apache na CentOS 7, postupujte podle našeho návodu, jak nainstalovat sadu Linux, Apache, MySQL, PHP (LAMP) na CentOS 7.

Příjemnou práci s počítačem!

author

Akshay Nagpal

Autor · CloudSigma

Preslav Dobrev je kreativní designér ve společnosti CloudSigma, který se zaměřuje na konzistentní firemní identitu prostřednictvím tradičních i inovativních marketingových kanálů. Je zdatný v propojování umělecké vize se strategickým marketingem za účelem vytváření působivých příběhů značky.

Komentáře

Zatím žádné komentáře. Buďte první.