GNU/Linux >> Znalost Linux >  >> Cent OS

Nakonfigurujte virtuální hostitele Apache na CentOS 7

S webovým serverem Apache můžete obsluhovat webový obsah na internetu. V zásadě platí, že když používáte webový server Apache, můžete použít virtuální hostitele k hostování více než jedné domény na jednom serveru. Apache rozdělí své funkce a komponenty do jednotlivých jednotek, takže si je můžete přizpůsobit nezávisle. Základní jednotka, která popisuje jednotlivé stránky nebo doménu, se nazývá virtuální hostitel.

Zde v LinuxAPT, jako součást našich služeb správy serveru, pravidelně pomáháme našim zákazníkům provádět související dotazy Apache.

V této souvislosti se podíváme na to, jak nastavit virtuální hostitele Apache na serveru CentOS 7.


Jak vytvořit virtuální hostitele Apache na CentOS?

Než budete pokračovat v tomto postupu, musíte se ujistit, že jsou splněny následující předpoklady:

  • Server CentOS 7 s uživatelem bez oprávnění root s právy sudo.
  • Apache by měl být nainstalován a konfigurován, jak je uvedeno v části Jak nainstalovat Apache na CentOS 7 Server.
  • Název domény by měl ukazovat na IP adresu vašeho serveru.


1. Vytvořte adresářovou strukturu

Pro začátek vytvoříme adresář, kde se budou ukládat soubory webových stránek pro doménu a budou sloužit jako odpověď návštěvníkům. Obecně se to nazývá DocumentRoot. Kořen dokumentu můžete nastavit na libovolné místo, které chcete, ale nejlepším postupem je nastavení v adresářové struktuře. Obecně ve všech /var/www:

/var/www/
 ├── example1.com
 │   └── public_html
 ├── linuxapt.com
 │   └── public_html

Zde musíme vytvořit samostatný adresář v adresáři /var/www pro každou doménu, kterou chceme hostovat na našem serveru:

$ sudo mkdir -p /var/www/example1.com/public_html

Abychom to otestovali, vytvoříme soubor index.html v kořenovém adresáři dokumentu domény. Tato stránka se ve výchozím nastavení zobrazí, když návštěvníci navštíví váš web.

Chcete-li vytvořit nový soubor index.html pomocí oblíbeného textového editoru, spusťte příkaz:

$ sudo vi /var/www/example1.com/public_html/index.html

Poté do něj přidejte následující řádky:

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <title>Welcome!!</title>
  </head>
  <body>
    <h1>Success! example1.com set up completed!</h1>
  </body>
</html>

Protože všechny příkazy jsou prováděny jako uživatel sudo, jsou nově vytvořené soubory a adresáře ve vlastnictví uživatele root. Změníme vlastnictví kořenových adresářů dokumentů, abychom předešli problémům s oprávněním pro našeho běžného uživatele. Běžný uživatel tak může bez problémů upravovat soubory v našich webových adresářích:

$ sudo chown -R apache: /var/www/example1.com


2. Vytvořte soubory virtuálního hostitele

Existuje několik způsobů, jak nastavit virtuální hostitele. Pro každou direktivu virtuálního hostitele můžete vytvořit samostatný soubor nebo můžete všechny direktivy virtuálního hostitele přidat do jednoho souboru. Je doporučeno vytvořit samostatný soubor pro každou doménu, protože je to udržovatelné.

Na CentOS načte Apache všechny soubory .conf z adresáře /etc/httpd/conf.d/, protože má výchozí konfiguraci. Nyní tedy vytvoříme samostatný virtuální hostitel.

Nyní vytvořte nový soubor pomocí zvoleného textového editoru spuštěním:

$ sudo vi /etc/httpd/conf.d/example1.com.conf
<VirtualHost *:80>
    ServerName example1.com
    ServerAlias www.example1.com
    DocumentRoot /var/www/example1.com/public_html
    <Directory /var/www/example1.com/public_html>
        Options -Indexes +FollowSymLinks
        AllowOverride All
    </Directory>
    ErrorLog /var/log/httpd/example1.com-error.log
    CustomLog /var/log/httpd/example1.com-access.log combined
</VirtualHost>

Všimněte si následujícího:

  • ServerName:Toto by měl být název vaší domény a měl by odpovídat konfiguraci virtuálního hostitele.
  • ServerAlias:Všechny ostatní domény nebo subdomény, které by měly tomuto virtuálnímu hostiteli odpovídat také, obvykle subdoména www.
  • DocumentRoot:Cesta k adresáři virtuálního hostitele, ze kterého bude Apache obsluhovat soubory domény.
  • Možnosti:Tato direktiva řídí, které funkce serveru jsou dostupné v konkrétním adresáři.
  • -Indexy:Zabrání výpisům adresářů.
  • FollowSymLinks:Pokud je tato možnost povolena, Apache bude následovat symbolické odkazy.
  • AllowOverride:Určuje, které direktivy deklarované v souboru .htaccess mohou přepsat konfigurační direktivy.
  • ErrorLog, CustomLog:Určuje umístění souborů protokolu.


Zde můžete svému konfiguračnímu souboru přidělit libovolné názvy, ale doporučuje se zadat stejný název souboru jako název domény.

Nyní zkontrolujte syntaxi podle typu :

$ sudo apachectl configtest

Uvidíte výstup, jako je tento:

Output
Syntax OK

Pro aktivaci nově vytvořených virtuálních hostitelů musíte restartovat službu apache2:

$ sudo systemctl restart httpd

Nakonec můžete ověřit přístupem ke své doméně (http://example1.com) ve webovém prohlížeči a zobrazí se něco takového:

Success! example1.com set up completed!



Cent OS
  1. Jak nastavit virtuální hostitele Apache na CentOS

  2. Konfigurace virtuálních hostitelů Apache na Ubuntu 18.04 – proces krok za krokem?

  3. Nastavte virtuální hostitele na CentOS

  1. Nainstalujte webový server Apache CentOS 6 / RHEL 6

  2. Nainstalujte a nakonfigurujte Apache Cassandra 4.0 v Centos 8

  3. Jak nakonfigurovat OpenSSH na CentOS 7

  1. Jak nastavit virtuální hostitele Apache na Ubuntu 18.04

  2. Jak nakonfigurovat virtuální síťové rozhraní na RHEL 8 / CentOS 8

  3. Jak nastavit virtuální hostitele Apache na Ubuntu 20.04