Android

Jak skonfigurować wirtualne hosty Apache na Debianie 9

How To Set Up Apache Virtual Hosts on Debian 9

How To Set Up Apache Virtual Hosts on Debian 9

Spisu treści:

Anonim

W tym samouczku przeprowadzimy Cię przez proces konfigurowania wirtualnych hostów Apache w systemie Debian 9.

Apache Virtual Hosts pozwala hostować więcej niż jedną domenę na jednym komputerze. Korzystając z wirtualnych hostów, możesz określić inny katalog główny (katalog zawierający pliki serwisu) dla każdej domeny lub subdomeny, stworzyć osobną politykę bezpieczeństwa, używać różnych certyfikatów SSL i wiele więcej.

Chociaż ten samouczek jest napisany dla Debiana 9, te same kroki dotyczą wszystkich dystrybucji opartych na Debianie.

Wymagania wstępne

Przed kontynuowaniem tego samouczka upewnij się, że zostały spełnione następujące wymagania wstępne:

  • Niech nazwa domeny wskazuje adres IP twojego serwera. W tym samouczku wykorzystamy example.com Zainstalować Apache na serwerze Debiana Zalogowany jako użytkownik z uprawnieniami sudo.

Utwórz strukturę katalogów

Katalog główny to katalog, w którym pliki witryny dla nazwy domeny są przechowywane i podawane w odpowiedzi na żądania. Możesz ustawić katalog główny dokumentu na dowolne miejsce. W tym przewodniku wykorzystamy następującą strukturę katalogów:

/var/www/ ├── domain1.com │ └── public_html ├── domain2.com │ └── public_html ├── domain3.com │ └── public_html

Każda domena hostowana na naszym serwerze będzie miała swój katalog główny dokumentu ustawiony na /var/www/ /public_html /var/www/ /public_html .

Zacznijmy od utworzenia katalogu głównego dokumentu dla naszej pierwszej domeny, example.com :

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

Utworzymy również plik index.html w katalogu głównym dokumentu domeny, który będzie wyświetlany podczas odwiedzania domeny w przeglądarce.

Otwórz swój ulubiony edytor tekstu, utwórz nowy plik i wklej do niego następujące elementy:

/var/www/example.com/public_html/index.html

<code> Welcome to example.com Success! example.com home page! </code>

Welcome to example.com Success! example.com home page!

Uruchamiamy polecenia jako użytkownik sudo, a nowo utworzone pliki i katalogi są własnością użytkownika root.

Aby uniknąć problemów z uprawnieniami, zmienimy własność katalogu głównego dokumentu domeny i wszystkich plików w tym katalogu na użytkownika apache ( www-data ):

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

Utwórz wirtualne hosty

W systemach Debian pliki konfiguracyjne hostów wirtualnych Apache znajdują się w /etc/apache2/sites-available i można je włączyć, tworząc dowiązania symboliczne do katalogu /etc/apache2/sites-enabled .

Otwórz wybrany edytor tekstu i utwórz następujący podstawowy plik konfiguracyjny Virtual Host:

/etc/apache2/sites-available/example.com.conf

ServerName example.com ServerAlias www.example.com ServerAdmin [email protected] DocumentRoot /var/www/example.com/public_html Options -Indexes +FollowSymLinks AllowOverride All ErrorLog ${APACHE_LOG_DIR}/example.com-error.log CustomLog ${APACHE_LOG_DIR}/example.com-access.log combined ServerName example.com ServerAlias www.example.com ServerAdmin [email protected] DocumentRoot /var/www/example.com/public_html Options -Indexes +FollowSymLinks AllowOverride All ErrorLog ${APACHE_LOG_DIR}/example.com-error.log CustomLog ${APACHE_LOG_DIR}/example.com-access.log combined ServerName example.com ServerAlias www.example.com ServerAdmin [email protected] DocumentRoot /var/www/example.com/public_html Options -Indexes +FollowSymLinks AllowOverride All ErrorLog ${APACHE_LOG_DIR}/example.com-error.log CustomLog ${APACHE_LOG_DIR}/example.com-access.log combined

  • ServerName : Domena, która powinna pasować do tej konfiguracji hosta wirtualnego. To powinna być nazwa Twojej domeny. ServerAlias : Wszystkie inne domeny lub subdomeny, które również powinny pasować do tego wirtualnego hosta, zazwyczaj subdomena www . DocumentRoot : katalog, z którego Apache będzie obsługiwał pliki domeny. Options : ta dyrektywa kontroluje, które funkcje serwera są dostępne w określonym katalogu.
    • -Indexes : Zapobiega wyświetlaniu katalogów. FollowSymLinks : Gdy ta opcja jest włączona, Apache będzie podążał za dowiązaniami symbolicznymi.
    AllowOverride : Określa, które dyrektywy zadeklarowane w pliku .htaccess mogą przesłonić dyrektywy konfiguracyjne. ErrorLog , CustomLog : Określa lokalizację plików dziennika.

Plik konfiguracyjny hosta wirtualnego można nazwać według własnego uznania, ale zaleca się stosowanie nazwy domeny jako nazwy pliku konfiguracyjnego.

Aby włączyć nowy wirtualny plik hosta, utwórz dowiązanie symboliczne z wirtualnego pliku hosta do katalogu sites-enabled , który jest czytany przez Apache podczas uruchamiania.

W systemach Debian można włączyć hosta wirtualnego za pomocą skryptu pomocniczego o nazwie a2ensite :

sudo a2ensite example.com

Inną opcją jest ręczne utworzenie dowiązania symbolicznego, jak pokazano poniżej:

sudo ln -s /etc/apache2/sites-available/example.com.conf /etc/apache2/sites-enabled/

Po włączeniu konfiguracji sprawdź, czy składnia jest poprawna, wpisując:

sudo apachectl configtest

Jeśli nie ma błędów, zobaczysz następujące dane wyjściowe:

Syntax OK

Zrestartuj usługę apache2 , aby zmiany odniosły skutek:

sudo systemctl restart apache2

Aby sprawdzić, czy wszystko działa zgodnie z oczekiwaniami, otwórz http://example.com w swojej ulubionej przeglądarce, a zobaczysz coś takiego:

Wniosek

W tym samouczku nauczyłeś się, jak utworzyć konfigurację wirtualnego hosta Apache do hostowania wielu domen na jednym serwerze Debian. Możesz powtórzyć te same kroki, aby utworzyć dodatkowe wirtualne hosty dla innych domen.

Apache Debian

Ten post jest częścią How to Install LAMP Stack na Debian 9 series.

Inne posty z tej serii:

• Jak zainstalować Apache na Debian 9 • Jak zainstalować PHP na Debian 9 • Jak skonfigurować Apache Virtual Hosts na Debian 9 • Jak zainstalować MariaDB na Debian 9 • Zabezpiecz Apache za pomocą Let's Encrypt na Debian 9