Настройка виртуальных хостов Apache Ubuntu 18.04
Spisu treści:
W tym samouczku przedstawimy instrukcje krok po kroku dotyczące konfigurowania wirtualnych hostów Apache w systemie Ubuntu 18.04.
Wirtualne hosty Apache pozwalają na uruchamianie więcej niż jednej strony na jednym komputerze. Za pomocą wirtualnych hostów możesz określić katalog główny witryny (katalog zawierający pliki witryny), utworzyć osobne zasady bezpieczeństwa dla każdej witryny, używać różnych certyfikatów SSL i wiele więcej.
Chociaż ten samouczek jest napisany dla Ubuntu 18.04 Bionic Beaver, te same kroki można wykonać w Ubuntu 16.04 Xenial Xerus.
Wymagania wstępne
Przed kontynuowaniem tego samouczka upewnij się, że zostały spełnione następujące wymagania wstępne:
- Masz nazwę domeny wskazującą adres IP twojego publicznego serwera. Skorzystamy z
example.com
. Masz zainstalowanego Apache, postępując zgodnie z tymi instrukcjami. Jesteś zalogowany jako użytkownik 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 użyjemy następującej struktury katalogów:
/var/www/ ├── domain1.com │ └── public_html ├── domain2.com │ └── public_html ├── domain3.com │ └── public_html
Zasadniczo utworzymy osobny katalog dla każdej domeny, którą chcemy hostować na naszym serwerze w katalogu
/var/www
. W każdym z tych katalogów utworzymy katalog
public_html
którym będą przechowywane pliki strony internetowej domeny.
Zacznij od utworzenia katalogu głównego dla domeny
example.com
:
sudo mkdir -p /var/www/example.com/public_html
Do celów testowych utwórz także plik
index.html
w katalogu głównym dokumentu domeny.
Otwórz edytor i utwórz plik demonstracyjny:
/var/www/example.com/public_html/index.html
Welcome to example.com Success! example.com home page!
Welcome to example.com Success! example.com home page!
W tym przewodniku 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, możemy zmienić własność katalogu głównego dokumentu domeny na użytkownika apache (
www-data
):
sudo chown -R www-data: /var/www/example.com
Utwórz wirtualne hosty
Domyślnie w systemach Ubuntu pliki konfiguracyjne hostów wirtualnych Apache są przechowywane w
/etc/apache2/sites-available
i można je włączyć, tworząc symboliczne łącza do katalogu
/etc/apache2/sites-enabled
.
Otwórz wybrany edytor i utwórz następujący podstawowy plik konfiguracyjny Virtual Host:
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, które również powinny pasować do tego wirtualnego hosta, takie jak subdomenawww
.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
: Ta opcja informuje serwer WWW, aby 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. -
Możesz nazwać plik konfiguracyjny, jak chcesz, ale najlepszą praktyką jest użycie nazwy domeny jako nazwy pliku konfiguracyjnego hosta wirtualnego.
Aby włączyć nowy wirtualny plik hosta, musimy utworzyć dowiązanie symboliczne z wirtualnego pliku hosta do katalogu
sites-enabled
, który jest odczytywany przez apache2 podczas uruchamiania.
Najprostszym sposobem włączenia wirtualnego hosta jest użycie pomocnika
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 zakończeniu przetestuj konfigurację pod kątem błędów składniowych za pomocą:
sudo apachectl configtest
Jeśli nie ma błędów, zobaczysz następujące dane wyjściowe:
Syntax OK
Uruchom ponownie usługę Apache, aby zmiany odniosły skutek:
sudo systemctl restart apache2
Na koniec, aby sprawdzić, czy wszystko działa zgodnie z oczekiwaniami, otwórz
http://example.com
w wybranej przeglądarce, a zobaczysz coś takiego:
Wniosek
Nauczyłeś się, jak tworzyć konfigurację wirtualnego hosta Apache do hostowania wielu domen na jednym serwerze Ubuntu. Możesz powtórzyć kroki opisane powyżej i utworzyć dodatkowe wirtualne hosty dla wszystkich domen.
apache ubuntuTen post jest częścią serii poradników dotyczących instalacji lampy na stosie na Ubuntu-18-04.
Inne posty z tej serii:
• Jak zainstalować Apache na Ubuntu 18.04 • Jak skonfigurować Apache Virtual Hosts na Ubuntu 18.04 • Bezpieczny Apache za pomocą Let's Encrypt na Ubuntu 18.04 • Jak zainstalować MySQL na Ubuntu 18.04 • Jak zainstalować PHP na Ubuntu 18.04Jak zainstalować i skonfigurować NextCloud z Apache na Ubuntu 18.04
Nextcloud to otwarta platforma do udostępniania plików i współpracy, podobnie jak Dropbox. W tym samouczku pokażemy, jak zainstalować i skonfigurować Nextcloud z Apache na komputerze Ubuntu 18.04.
Jak skonfigurować wirtualne hosty Apache na Centos 7
W tym samouczku przedstawimy instrukcje krok po kroku dotyczące konfigurowania wirtualnych hostów Apache na serwerze CentOS 7. Apache Virtual Hosts pozwala na uruchamianie wielu stron internetowych na jednym serwerze WWW.
Jak skonfigurować wirtualne hosty Apache na Debianie 9
Apache Virtual Hosts pozwala hostować więcej niż jedną domenę na jednym komputerze. W tym samouczku przeprowadzimy Cię przez proces konfigurowania wirtualnych hostów Apache w systemie Debian 9.