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

Jak nastavit virtuální hostitele Apache na CentOS 7

Virtuální hostitelé Apache umožňují běh více webových stránek na jednom webovém serveru. S virtuálními hostiteli můžete určit kořen dokumentu webu (adresář, který obsahuje soubory webu), vytvořit samostatnou bezpečnostní politiku pro každý web, použít různé certifikáty SSL pro každý web a mnoho dalšího.

V tomto tutoriálu poskytneme pokyny krok za krokem, jak nastavit virtuální hostitele Apache na serveru CentOS 7.

Předpoklady #

Než budete pokračovat v tomto kurzu, ujistěte se, že splňujete následující předpoklady:

  • Máte název domény odkazující na IP vašeho veřejného serveru. Použijeme example.com .
  • Máte nainstalovaný Apache podle postupu Jak nainstalovat Apache na CentOS 7.
  • Jste přihlášeni jako uživatel s právy sudo.

Vytváření adresářové struktury #

DocumentRoot je adresář, kde jsou uloženy soubory webových stránek pro název domény a obsluhovány v reakci na požadavky. Kořen dokumentu můžete nastavit na libovolné místo, v tomto příkladu použijeme následující adresářovou strukturu:

/var/www/
├── example.com
│   └── public_html
├── example-1.com
│   └── public_html
├── example-2.com
│   └── public_html

Vytváříme samostatný adresář pro každou doménu, kterou chceme hostovat na našem serveru v /var/www adresář. V každém z těchto adresářů vytvoříme public_html adresář, ve kterém budou uloženy soubory webových stránek domény.

Vytvořte kořenový adresář pro doménu example.com pomocí příkazu mkdir:

sudo mkdir -p /var/www/example.com/public_html

Pro testovací účely vytvoříme index.html soubor v kořenovém adresáři dokumentu domény. Otevřete editor a vytvořte soubor HTML s následujícím obsahem:

/var/www/example.com/public_html/index.html
<!DOCTYPE html>
<html lang="en" dir="ltr">
  <head>
    <meta charset="utf-8">
    <title>Welcome to example.com</title>
  </head>
  <body>
    <h1>Success! example.com home page!</h1>
  </body>
</html>

Všechny příkazy jsou prováděny jako uživatel sudo, takže nově vytvořené soubory a adresáře jsou ve vlastnictví uživatele root. Abyste se ujistili, že nedochází k problémům s oprávněními, změňte vlastnictví kořenového adresáře dokumentu domény na apache uživatel :

sudo chown -R apache: /var/www/example.com

Vytváření souboru virtuálního hostitele #

Existuje několik způsobů, jak nastavit virtuální hostitele. Můžete buď přidat všechny direktivy virtuálního hostitele do jednoho souboru, nebo vytvořit nový konfigurační soubor pro každou direktivu virtuálního hostitele. Osobně preferuji druhý přístup, protože je lépe udržovatelný.

Ve výchozím nastavení je Apache nakonfigurován tak, aby načítal všechny konfigurační soubory, které končí na .conf z /etc/httpd/conf.d/ adresář.

Chcete-li vytvořit virtuálního hostitele pro konkrétní webovou stránku, otevřete svůj editor a vytvořte následující základní konfigurační soubor virtuálního hostitele:

/etc/httpd/conf.d/example.com.conf
<VirtualHost *:80>
    ServerName example.com
    ServerAlias www.example.com
    ServerAdmin [email protected]
    DocumentRoot /var/www/example.com/public_html

    <Directory /var/www/example.com/public_html>
        Options -Indexes +FollowSymLinks
        AllowOverride All
    </Directory>

    ErrorLog /var/log/httpd/example.com-error.log
    CustomLog /var/log/httpd/example.com-access.log combined
</VirtualHost>
  • ServerName :Doména, která by měla odpovídat této konfiguraci virtuálního hostitele. Toto by měl být název vaší domény.
  • ServerAlias :Všechny ostatní domény, které by se měly také shodovat s tímto virtuálním hostitelem, jako je www subdoména.
  • DocumentRoot :Adresář, ze kterého bude Apache obsluhovat soubory domény.
  • Options :Tato směrnice řídí, které funkce serveru jsou dostupné v konkrétním adresáři.
    • -Indexes :Zabraňuje výpisům adresářů.
    • FollowSymLinks :Tato možnost říká vašemu webovému serveru, aby sledoval symbolické odkazy.
  • AllowOverride :Určuje, které směrnice deklarované v .htaccess soubor může přepsat konfigurační direktivy.
  • ErrorLog , CustomLog :Určuje umístění souborů protokolu.

Upravte soubor podle svých potřeb a uložte jej.

Je důležité, aby název konfiguračního souboru končil .conf . Konfigurační soubor můžete pojmenovat, jak chcete, ale nejlepším postupem je použít název domény jako název konfiguračního souboru virtuálního hostitele.

Otestujte syntaxi konfiguračního souboru pomocí:

sudo apachectl configtest

Pokud nejsou žádné chyby, uvidíte následující výstup:

Syntax OK

Chcete-li aktivovat nově vytvořeného virtuálního hostitele, restartujte službu Apache pomocí:

sudo systemctl restart httpd

Otevřete http://example.com a ověřte, že vše funguje podle očekávání :


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

  2. Nakonfigurujte virtuální hostitele Apache na CentOS 7

  3. Nastavte virtuální hostitele na CentOS

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

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

  3. Jak nastavit bloky serveru Nginx na CentOS 7

  1. Jak nainstalovat WordPress s Apache na CentOS 7

  2. Jak nastavit bloky serveru Nginx na CentOS 8

  3. Jak nastavit virtuální hostitele Apache na CentOS 8