Apache HTTP

Jak konfigurovat Apache VirtualHost na Ubuntu 18.04 LTS

Jak konfigurovat Apache VirtualHost na Ubuntu 18.04 LTS
Apache VirtualHost se používá ke spuštění více webových stránek na stejném serveru Apache. Je to úžasná funkce webového serveru Apache 2 pro nasazení webů s vysokou hustotou na jednom serveru. Apache má dva typy konfigurace VirtualHost, VirtualHost založený na IP a VirtualHost založený na jménech.Virtuální hostitel založený na IP: V VirtualHost založeném na IP má server Apache více IP adres a na základě IP adresy reaguje různými webovými stránkami.

Obrázek 1: Apache VirtualHost založený na IP.

Název založený na VirtualHost: V názvu založeném na VirtualHostu má server Apache pro každý web nakonfigurovanou jednu IP adresu a více doménových jmen. Na serveru DNS je každému z těchto názvů domén přiřazena adresa IP serveru Apache. V závislosti na tom, jaký název domény klient použil, server vrací různé weby.

Obrázek 2: VirtualHost založený na názvu Apache.

V tomto článku vám ukážu, jak nakonfigurovat VirtualHost založený na názvu Apache. Budu používat Ubuntu 18.04 LTS pro demonstraci. Mělo by to ale fungovat na jakékoli moderní distribuci Linuxu s malými nebo žádnými změnami. Pojďme tedy začít.

Instalace webového serveru Apache 2:

Webový server Apache 2 je k dispozici v oficiálním úložišti balíků Ubuntu 18.04 LTS. Můžete jej tedy snadno nainstalovat pomocí správce balíčků APT.

Nejprve aktualizujte mezipaměť úložiště balíčků APT pomocí následujícího příkazu:

$ sudo apt aktualizace

Nyní spusťte následující příkaz k instalaci webového serveru Apache 2:

$ sudo apt nainstalovat apache2

Nyní stiskněte y a poté stiskněte pokračovat.

Měl by být nainstalován webový server Apache 2.

Konfigurace DNS:

Nyní musíte nakonfigurovat server DNS tak, aby mapoval názvy domén, které chcete použít pro VirtualHost, na adresu IP vašeho serveru Apache.

IP adresu vašeho serveru Apache najdete pomocí následujícího příkazu:

$ ip a | egrep "inet"

Jak vidíte, IP adresa v mém případě je 192.168.21.166. Bude to pro vás jiné. Od této chvíle jej tedy vyměňte za svůj.

Pokud se chcete dozvědět, jak konfigurovat Apache VirtualHost lokálně, můžete použít / etc / hosts soubor pro místní překlad DNS / jmen.

Chcete-li konfigurovat místní rozlišení DNS, otevřete / etc / hosts soubor s nano jak následuje:

$ sudo nano / etc / hosts

Nyní přidejte do souboru řádek označený na snímku obrazovky níže. Poté stiskněte + X následován y a soubor uložit.

Nyní by mělo fungovat překládání místních názvů.

Struktury adresářů:

Chci uchovat všechna data webových stránek mého Apache VirtualHost v konkrétním adresáři / www. Tady chci vytvořit adresář pro každého uživatele. Každý uživatel bude mít svůj vlastní public_html / a kulatiny / adresář také.

Například pro 3 uživatele bob (příklad1.com), Alice (příklad2.com), linda (příklad3.com), adresářová struktura je následující:

/ www
- příklad1.com /
- www /
- public_html /
- index.html
- kulatiny /
- příklad2.com /
- www /
- public_html /
- index.html
- kulatiny /
- příklad3.com /
- www /
- public_html /
- index.html
- kulatiny /

Snadný způsob, jak to udělat, je vytvořit adresář šablony nebo kostry a umístit tam adresářovou strukturu.  Potom vytvořte jednotlivé uživatele pomocí tohoto adresáře kostry.

Nejprve zkopírujte obsah výchozího adresáře kostry / etc / skel do jiného adresáře / etc / skel-www jak následuje:

$ sudo cp -rv / etc / skel / etc / skel-www

Nyní přejděte do nového adresáře kostry následujícím způsobem:

$ cd / etc / skel-www

Poté vytvořte požadovanou adresářovou strukturu uvnitř kostry takto:

$ sudo mkdir -p www / public_html, protokoly

Můžete také vytvořit výchozí index.html soubor v public_html / adresář, pokud chcete.

$ echo "

Funguje to

"| sudo tee www / public_html / index.html

Nyní vytvořte / www adresář s následujícím příkazem:

$ sudo mkdir / www

Vytváření uživatelů:

Nyní můžete vytvořit uživatele bob pro www.příklad1.com takto:

$ sudo useradd --create-home --home-dir / www / example1.skořápka
/ bin / bash --gid www-data --skel / etc / skel-www bob

Stejným způsobem vytvořte uživatele Alice pro www.příklad2.com takto:

$ sudo useradd --create-home --home-dir / www / example2.com - shell / bin / bash
--gid www-data --skel / etc / skel-www alice

Opět vytvořte uživatele linda pro www.příklad3.com takto:

$ sudo useradd --create-home --home-dir / www / example3.com - shell / bin / bash
--gid www-data --skel / etc / skel-www linda

Zde jsem přidělil primární skupinu každého uživatele www-data. Ve výchozím nastavení běží server Apache jako tato skupina. Pokud bych to neudělal, server Apache nebude mít přístup k souborům v souboru public_html / adresář a vytvořit soubory protokolu v kulatiny / adresář.

Konfigurace Apache VirtualHost:

Nyní jste připraveni nakonfigurovat Apache VirtualHost pro 3 uživatele bob (www.příklad1.com), Alice (www.příklad2.com) a Linda (www.příklad3.com).

Výchozí adresář konfigurace serveru Apache v Ubuntu je / etc / apache2 / sites-available.

Nyní přejděte do adresáře / etc / apache2 / sites-available / jak následuje.

$ cd / etc / apache2 / sites-available /

Nejprve vytvořte nový konfigurační soubor pro bob www.příklad1.com.konf jak následuje:

$ sudo nano www.příklad1.com.konf

Měl by být otevřen textový editor.

Nyní zadejte následující řádky.

Příklad názvu serveru.com
ServerAlias ​​www.příklad1.com
DocumentRoot "/ www / example1.com / www / public_html "

Možnosti -FollowSymLinks + MultiViews + indexy
AllowOverride all
Vyžadovat vše uděleno
ErrorLog "/ www / example1.com / www / logs / error.přihlásit "
CustomLog "/ www / example1.com / www / logs / access.kombinovat

POZNÁMKA: Změňte tučné texty podle svých požadavků.

Nakonec konfigurační soubor www.příklad.com.konf by měl vypadat následovně. lis + X následovaný y a uložte konfigurační soubor.

jen zkopírovat konfigurační soubor pro bob (www.příklad1.com.konf) a proveďte ty malé změny, které jsou nutné.

Zkopírujte konfigurační soubor z bob pro Alice a Linda s následujícími příkazy:

$ sudo cp -v www.příklad1.com.conf www.příklad2.com.konf
$ sudo cp -v www.příklad1.com.conf www.příklad3.com.konf

Nyní upravte konfigurační soubor Alice jak následuje:

$ sudo nano www.příklad2.com.konf

Nyní změňte všechny výskyty příklad1 na příklad2. Poté soubor uložte.

Udělejte to samé pro Linda.

$ sudo nano www.příklad3.com.konf

Změnit všechny výskyty příklad1 na příklad3 a uložte soubor.

Povolení konfigurací VirtualHost:

Nyní deaktivujte výchozí konfiguraci webu Apache následujícím způsobem:

$ sudo a2dissite 000-výchozí.konf

Nyní povolte konfigurace VirtualHost www.příklad1.com.konf, www.příklad2.com.konf, www.příklad3.com.konf jak následuje:

$ sudo a2ensite www.příklad1.com.conf www.příklad2.com.conf www.příklad3.com.konf

Nakonec restartujte službu Apache následujícím způsobem:

$ sudo systemctl restart apache2

Testování VirtualHosts:

Nyní zkuste přejít na webové stránky www.příklad1.com, www.příklad2.com, www.příklad3.com

Jak vidíte, všechny tyto webové stránky fungují podle očekávání.

POZNÁMKA: Změnil jsem výchozí stránku index.html pro každý web, takže je to trochu jiné pro každý web pro účely testování. Jinak nebudete moci zjistit, zda konfigurace VirtualHost funguje nebo ne.

Takto nakonfigurujete název založený na Apache VirtualHost na Ubuntu 18.04 LTS. Děkujeme za přečtení tohoto článku.

Jak obrátit směr posouvání myši a touchpadu ve Windows 10
Myš a Touchpadnejenže usnadňují výpočet, ale jsou efektivnější a méně časově náročné. Nemůžeme si představit život bez těchto zařízení, ale přesto je ...
Jak změnit velikost, barvu a schéma kurzoru myši a kurzoru v systému Windows 10
Ukazatel myši a kurzor ve Windows 10 jsou velmi důležité aspekty operačního systému. To lze říci i pro jiné operační systémy, takže ve skutečnosti nej...
Hry Zdarma a open source herní motory pro vývoj linuxových her
Zdarma a open source herní motory pro vývoj linuxových her
Tento článek pokryje seznam bezplatných a otevřených herních enginů, které lze použít pro vývoj 2D a 3D her v systému Linux. Existuje mnoho takových h...