0Pricing
Linux Server Deployment & SSH Mastery · Lekcja

Podstawowa konfiguracja wirtualnych hostów

Skonfiguruj wirtualne hosty (lub bloki serwera), aby hostować wiele witryn na jednym serwerze przy użyciu różnych nazw domen.

Podstawowa konfiguracja wirtualnych hostów to bezpłatna lekcja Linux Server Deployment & SSH Mastery na CoddyKit. To lekcja 3 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Linux Server Deployment & SSH Mastery, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Linux Server Deployment & SSH Mastery zawiera 4 lekcji w sumie.

Hostowanie wielu witryn

Wyobraźmy sobie, że mają Państwo jeden wydajny serwer, ale chcą hostować kilka różnych witryn, z których każda ma własną nazwę domeny (np. myshop.com i myblog.com).

Jak jeden serwer może sprawnie obsługiwać te witryny bez potrzeby używania osobnej maszyny dla każdej z nich?

Czym są hosty wirtualne?

Właśnie tutaj przydają się Virtual Hosts (Apache) lub bloki serwera (Nginx)!

  • Są to jednostki konfiguracji, które pozwalają jednemu serwerowi WWW hostować wiele nazw domen.
  • Każda domena może mieć własny katalog główny dokumentów (w którym znajdują się jej pliki), dzienniki i określone ustawienia.
  • Oszczędza to zasoby i upraszcza zarządzanie serwerem.

Konfigurowanie Virtual Host w Apache

W Apache konfiguracje hostów wirtualnych są zwykle przechowywane w plikach .conf w określonych katalogach:

  • /etc/apache2/sites-available/: Zawiera wszystkie dostępne konfiguracje hostów wirtualnych.
  • /etc/apache2/sites-enabled/: Zawiera dowiązania symboliczne do aktualnie aktywnych konfiguracji.

Do ich włączania używamy poleceń takich jak a2ensite.

Apache: podstawowy host wirtualny

Oto prosta konfiguracja hosta wirtualnego Apache. Ten plik zostanie utworzony w katalogu sites-available.

<VirtualHost *:80>
    ServerAdmin webmaster@example.com
    ServerName myfirstsite.com
    ServerAlias www.myfirstsite.com
    DocumentRoot /var/www/myfirstsite
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

Apache: kroki konfiguracji

Aby skonfigurować hosta wirtualnego Apache dla domeny myfirstsite.com:

  1. Utwórz katalog na pliki swojej witryny.
  2. Utwórz plik konfiguracyjny hosta wirtualnego.
  3. Włącz witrynę i przeładuj Apache.

Przyjrzyjmy się poleceniom dotyczącym dwóch pierwszych kroków:

sudo mkdir -p /var/www/myfirstsite/html
sudo chown -R $USER:$USER /var/www/myfirstsite/html
sudo nano /etc/apache2/sites-available/myfirstsite.conf

Apache: włączanie i przeładowywanie

Po utworzeniu i zapisaniu pliku .conf użyj tych poleceń, aby go aktywować i zastosować zmiany:

  • sudo a2ensite myfirstsite.conf: Tworzy dowiązanie symboliczne w katalogu sites-enabled.
  • sudo apache2ctl configtest: Sprawdza, czy konfiguracja Apache nie zawiera błędów składni.
  • sudo systemctl reload apache2: Stosuje nową konfigurację bez ponownego uruchamiania serwera.
sudo a2ensite myfirstsite.conf
sudo apache2ctl configtest
sudo systemctl reload apache2

Konfiguracja bloków serwera Nginx

Nginx używa bloków serwera, które są bardzo podobne do hostów wirtualnych Apache. Wykorzystują również podobną strukturę katalogów:

  • /etc/nginx/sites-available/: Przechowuje wszystkie konfiguracje bloków serwera.
  • /etc/nginx/sites-enabled/: Zawiera dowiązania symboliczne do aktywnych bloków serwera.

Zamiast korzystać z pomocniczego polecenia, ręcznie tworzymy dowiązania symboliczne.

Nginx: podstawowy blok serwera

Oto podstawowa konfiguracja bloku serwera Nginx dla domeny mysecondsite.com. Ten plik zostanie utworzony w katalogu sites-available.

server {
    listen 80;
    listen [::]:80;

    root /var/www/mysecondsite/html;
    index index.html index.htm;

    server_name mysecondsite.com www.mysecondsite.com;

    location / {
        try_files $uri $uri/ =404;
    }
}

Nginx: kroki konfiguracji

Aby skonfigurować blok serwera Nginx dla domeny mysecondsite.com:

  1. Utwórz katalog na pliki swojej witryny.
  2. Utwórz plik konfiguracyjny bloku serwera.
  3. Utwórz dowiązanie symboliczne i przeładuj Nginx.

Oto polecenia dotyczące dwóch pierwszych kroków:

sudo mkdir -p /var/www/mysecondsite/html
sudo chown -R $USER:$USER /var/www/mysecondsite/html
sudo nano /etc/nginx/sites-available/mysecondsite

Nginx: włączanie i przeładowywanie

Po utworzeniu i zapisaniu pliku bloku serwera użyj tych poleceń, aby go aktywować i zastosować zmiany:

  • sudo ln -s /etc/nginx/sites-available/mysecondsite /etc/nginx/sites-enabled/: Tworzy dowiązanie symboliczne.
  • sudo nginx -t: Sprawdza konfigurację Nginx pod kątem błędów składni.
  • sudo systemctl reload nginx: Stosuje nową konfigurację bez ponownego uruchamiania.
sudo ln -s /etc/nginx/sites-available/mysecondsite /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl reload nginx

Sprawdzanie hosta wirtualnego

Wiesz już, jak konfigurować serwery internetowe do obsługi wielu witryn. Sprawdźmy, czy wszystko jest jasne.

Podsumowanie: wiele witryn, jeden serwer

Świetnie! Poznałeś już najważniejsze zasady konfigurowania hostów wirtualnych (Apache) i bloków serwera (Nginx).

  • Te konfiguracje umożliwiają wydajną obsługę wielu witryn na jednym serwerze.
  • Wiesz już, jak tworzyć odrębne konfiguracje dla różnych nazw domen.
  • Jest to podstawowa umiejętność w administracji serwerami internetowymi i wdrażaniu wielu aplikacji.

Często zadawane pytania

Czy lekcja „Podstawowa konfiguracja wirtualnych hostów” jest bezpłatna?

Tak — pełny tekst „Podstawowa konfiguracja wirtualnych hostów” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Linux Server Deployment & SSH Mastery, przejdź na CoddyKit PRO. Kurs Linux Server Deployment & SSH Mastery zawiera 4 lekcji w sumie.

Co nauczysz się w „Podstawowa konfiguracja wirtualnych hostów”?

Skonfiguruj wirtualne hosty (lub bloki serwera), aby hostować wiele witryn na jednym serwerze przy użyciu różnych nazw domen. Ćwiczysz Linux Server Deployment & SSH Mastery z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.

Czy potrzebuję doświadczenia, aby zacząć Linux Server Deployment & SSH Mastery?

Nie wymagamy żadnego doświadczenia. Linux Server Deployment & SSH Mastery w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 3 z 4.

Ile czasu zajmuje lekcja „Podstawowa konfiguracja wirtualnych hostów”?

Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.

Czy mogę pisać i uruchamiać kod w tej lekcji Linux Server Deployment & SSH Mastery?

Tak. Każda lekcja Linux Server Deployment & SSH Mastery zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.

Wszystkie lekcje w tym kursie

  1. Instalowanie Nginx/Apache
  2. Hostowanie statycznych witryn
  3. Podstawowa konfiguracja wirtualnych hostów
  4. Włączanie HTTPS za pomocą Let's Encrypt
← Powrót do Linux Server Deployment & SSH Mastery