{"id":1899,"date":"2024-12-30T13:12:13","date_gmt":"2024-12-30T13:12:13","guid":{"rendered":"https:\/\/www.statnet.pl\/blog\/?p=1899"},"modified":"2024-12-30T13:12:13","modified_gmt":"2024-12-30T13:12:13","slug":"vps-jak-skonfigurowac-wirtualne-hosty-apache-w-systemie-debian-11","status":"publish","type":"post","link":"https:\/\/www.statnet.pl\/blog\/vps\/vps-jak-skonfigurowac-wirtualne-hosty-apache-w-systemie-debian-11\/","title":{"rendered":"VPS: jak skonfigurowa\u0107 wirtualne hosty Apache w systemie Debian 11"},"content":{"rendered":"\n<p><strong>Wprowadzenie<\/strong><\/p>\n\n\n\n<p>Serwer Apache jest jednym z najcz\u0119\u015bciej stosowanych rozwi\u0105za\u0144 do obs\u0142ugi stron internetowych, stanowi\u0105c ponad 50% wszystkich aktywnych witryn w Internecie. Jego ogromna elastyczno\u015b\u0107 sprawia, \u017ce jest idealnym wyborem dla r\u00f3\u017cnych aplikacji i konfiguracji.<\/p>\n\n\n\n<p>W architekturze Apache funkcjonalno\u015b\u0107 i komponenty s\u0105 podzielone na jednostki, co pozwala na niezale\u017cne dostosowywanie ich do specyficznych potrzeb. Podstawow\u0105 jednostk\u0105, kt\u00f3ra opisuje pojedyncz\u0105 witryn\u0119 lub domen\u0119, jest tzw. wirtualny host. Dzi\u0119ki temu mo\u017cemy \u0142atwo zarz\u0105dza\u0107 wieloma stronami na jednym serwerze, ka\u017cd\u0105 z w\u0142asnymi ustawieniami i konfiguracjami.<\/p>\n\n\n\n<p>Korzystaj\u0105c z wirtualnych host\u00f3w, mo\u017cemy u\u017cy\u0107 jednego serwera do obs\u0142ugi wielu domen lub witryn z pojedynczego interfejsu lub adresu IP, korzystaj\u0105c z mechanizmu dopasowania.&nbsp;Konfigurujemy \u017c\u0105dania domeny, tak aby kierowa\u0107 u\u017cytkownika do okre\u015blonego katalogu zawieraj\u0105cego informacje o tej witrynie.&nbsp;Innymi s\u0142owy, mo\u017cna obs\u0142ugiwa\u0107 wi\u0119cej ni\u017c jedn\u0105 witryn\u0119 sieci Web na jednym serwerze.&nbsp;Ten spos\u00f3b mo\u017ce by\u0107 rozwijany bez jakiegokolwiek limitu, dop\u00f3ki serwer radzi sobie z obci\u0105\u017ceniem.<\/p>\n\n\n\n<p>W tym samouczku utworzymy dwa wirtualne hosty Apache na serwerze Debian 11, kt\u00f3re b\u0119d\u0105 zawiera\u0107 odmienn\u0105 tre\u015b\u0107, w zale\u017cno\u015bci od odwiedzanej przez u\u017cytkownik\u00f3w domeny.<\/p>\n\n\n\n<p><strong>Wymagania wst\u0119pne<\/strong><\/p>\n\n\n\n<p>Aby m\u00f3c post\u0119powa\u0107 zgodnie z kolejnymi instrukcjami musimy posiada\u0107:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Serwer Debian 11 z u\u017cytkownikiem innym ni\u017c administrator, kt\u00f3ry posiada uprawnienia sudo.<\/li>\n\n\n\n<li>Apache, kt\u00f3ry zosta\u0142 zainstalowany i skonfigurowany w Debianie 11.<\/li>\n<\/ul>\n\n\n\n<p>W tym przewodniku utworzymy wirtualne hosty dla&nbsp;<code>example.com<\/code>&nbsp;i&nbsp;<code>test.com<\/code>, ale mo\u017cemy zast\u0105pi\u0107 je w\u0142asnymi domenami lub warto\u015bciami.&nbsp;<\/p>\n\n\n\n<p>Pozwala to przetestowa\u0107 konfiguracj\u0119 z lokalnego komputera.<\/p>\n\n\n\n<p><strong>Krok 1 &#8211; Tworzenie struktury katalog\u00f3w<\/strong><\/p>\n\n\n\n<p>Pierwszym krokiem, jaki zamierzamy podj\u0105\u0107, jest utworzenie struktury katalogowej, kt\u00f3ra b\u0119dzie przechowywa\u0142a dane witryny, udost\u0119pniane odwiedzaj\u0105cym.<\/p>\n\n\n\n<p>Nasz&nbsp;root &#8211; katalog&nbsp;najwy\u017cszego poziomu, kt\u00f3ry jest przeszukiwany przez Apache, aby znale\u017a\u0107 zawarto\u015b\u0107, kt\u00f3ra ma by\u0107 obs\u0142ugiwana, powinna by\u0107 ustawiona w osobnych katalogach poni\u017cej&nbsp;<code>\/var\/www<\/code>.&nbsp;Tworzymy katalog dla ka\u017cdego wirtualnego hosta, kt\u00f3ry skonfigurujemy.<\/p>\n\n\n\n<p>W ka\u017cdym z tych katalog\u00f3w tworzymy folder o nazwie,&nbsp;<code>public_html<\/code>&nbsp;przechowuj\u0105cy strony internetowe, kt\u00f3re chcemy za jego pomoc\u0105 obs\u0142ugiwa\u0107.&nbsp;Daje to nam nieco wi\u0119ksz\u0105 elastyczno\u015b\u0107 w stosowaniu bardziej skomplikowanych aplikacji internetowych w przysz\u0142o\u015bci; folder&nbsp;<code>public_html<\/code>&nbsp;b\u0119dzie zawiera\u0142 tre\u015b\u0107, kt\u00f3r\u0105 chcemy udost\u0119pnia\u0107, a folder nadrz\u0119dny mo\u017ce posiada\u0107 skrypty lub kod aplikacji w celu wspierania stron.<\/p>\n\n\n\n<p>Tworzymy katalogi za pomoc\u0105 nast\u0119puj\u0105cych polece\u0144:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">$ sudo mkdir -p \/var\/www\/example.com\/public_html<br>$ sudo mkdir -p \/var\/www\/test.com\/public_html<\/pre>\n\n\n\n<p>Poniewa\u017c utworzyli\u015bmy katalogi&nbsp;<code>sudo<\/code>, s\u0105 one w\u0142asno\u015bci\u0105 g\u0142\u00f3wnego u\u017cytkownika.&nbsp;Je\u015bli chcemy, aby nasz zwyk\u0142y u\u017cytkownik m\u00f3g\u0142 modyfikowa\u0107 pliki w katalogach internetowych, zmieniamy warto\u015bci:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">$ sudo chown -R $USER:$USER \/var\/www\/example.com\/public_html<br>$ sudo chown -R $USER:$USER \/var\/www\/test.com\/public_html<\/pre>\n\n\n\n<p>Zmienna $USER wykorzystuje dane u\u017cytkownika, kt\u00f3ry jest aktualnie zalogowany po naci\u015bni\u0119ciu&nbsp;ENTER.&nbsp;W ten spos\u00f3b nasz zwyk\u0142y u\u017cytkownik ma dost\u0119p do podkatalog\u00f3w&nbsp;<code>public_html<\/code>, w kt\u00f3rych przechowywane b\u0119dzie tre\u015b\u0107.<\/p>\n\n\n\n<p>Powinni\u015bmy r\u00f3wnie\u017c zmodyfikowa\u0107 nasze uprawnienia, aby zapewni\u0107 dost\u0119p do odczytu do og\u00f3lnego katalogu sieciowego oraz wszystkich plik\u00f3w i folder\u00f3w, w nim zawartych, w celu umo\u017cliwienia prawid\u0142owego wy\u015bwietlania stron.&nbsp;<\/p>\n\n\n\n<p>U\u017cywamy poni\u017cszej komendy, aby zmieni\u0107 uprawnienia do&nbsp;folderu&nbsp;<code>\/var\/www<\/code>&nbsp;i jego folder\u00f3w podrz\u0119dnych.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">$ sudo chmod -R 755 \/var\/www<\/pre>\n\n\n\n<p>Nasz serwer internetowy powinien teraz mie\u0107 uprawnienia, kt\u00f3rych potrzebuje do wy\u015bwietlania tre\u015bci, a my powinni\u015bmy mie\u0107 mo\u017cliwo\u015b\u0107 tworzenia zawarto\u015bci w folderach.&nbsp;<\/p>\n\n\n\n<p>Teraz stworzymy plik HTML dla ka\u017cdej z witryn. Mamy ju\u017c struktur\u0119 katalogow\u0105, to opublikujmy nieco tre\u015bci.<\/p>\n\n\n\n<p><strong>Krok 2 &#8211; Tworzenie domy\u015blnych stron dla ka\u017cdego hosta wirtualnego.<\/strong><\/p>\n\n\n\n<p>Stw\u00f3rzmy&nbsp;<code>index.html<\/code>&nbsp;dla ka\u017cdej ze stron.&nbsp;Pomo\u017ce nam to w poprawnym skonfigurowaniu naszych wirtualnych host\u00f3w.<\/p>\n\n\n\n<p>Zacznijmy od strony&nbsp;example.com.&nbsp;Edytujemy plik&nbsp;<code>index.html<\/code>&nbsp;przy u\u017cyciu nast\u0119puj\u0105cej komendy:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">$ nano \/var\/www\/example.com\/public_html\/index.html<\/pre>\n\n\n\n<p>W tym pliku tworzymy prosty dokument HTML, kt\u00f3ry wskazuje, \u017ce przegl\u0105daj\u0105cy szuka strony g\u0142\u00f3wnej&nbsp;<code>example.com<\/code>:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">\/var\/www\/example.com\/public_html\/index.html<br>&lt;html><br>  &lt;head><br>    &lt;title>Welcome to Example.com!&lt;\/title><br>  &lt;\/head><br>  &lt;body><br>    &lt;h1>Success! The example.com virtual host is working!&lt;\/h1><br>  &lt;\/body><br>&lt;\/html><\/pre>\n\n\n\n<p>Zapisujemy i zamykamy plik po zako\u0144czeniu.<\/p>\n\n\n\n<p>Teraz skopiujmy ten plik na stron\u0119&nbsp;<code>test.com<\/code><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">$ cp \/var\/www\/example.com\/public_html\/index.html \/var\/www\/test.com\/public_html\/index.html<\/pre>\n\n\n\n<p>Nast\u0119pnie otwieramy plik w edytorze:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">$ nano \/var\/www\/test.com\/public_html\/index.html<\/pre>\n\n\n\n<p>Zmieniamy plik tak, aby&nbsp;test.com zawiera\u0142&nbsp;odniesienia&nbsp;do&nbsp;<code>example.com<\/code>:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">\/var\/www\/test.com\/public_html\/index.html<br>&lt;html><br>  &lt;head><br>    &lt;title>Welcome to Test.com!&lt;\/title><br>  &lt;\/head><br>  &lt;body> &lt;h1>Success! The test.com virtual host is working!&lt;\/h1><br>  &lt;\/body><br>&lt;\/html><\/pre>\n\n\n\n<p>Zapisujemy i zamykamy ten plik.&nbsp;<\/p>\n\n\n\n<p>Teraz mamy strony niezb\u0119dne do przetestowania konfiguracji wirtualnego hosta.&nbsp;<\/p>\n\n\n\n<p><strong>Krok 3 \u2013 Tworzenie nowych plik\u00f3w wirtualnego hosta.<\/strong><\/p>\n\n\n\n<p>Pliki wirtualnych host\u00f3w okre\u015blaj\u0105 rzeczywist\u0105 konfiguracj\u0119 naszych wirtualnych host\u00f3w i spos\u00f3b w jaki serwer Apache odpowiada na r\u00f3\u017cne \u017c\u0105dania domen.<\/p>\n\n\n\n<p>Apache jest dostarczany z domy\u015blnym plikiem hosta&nbsp;<code>000-default.conf<\/code>, kt\u00f3ry mo\u017cna u\u017cywa\u0107 jako pocz\u0105tkowy.&nbsp;Skopiuj ten plik do pierwszej domeny:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">$ sudo cp \/etc\/apache2\/sites-available\/000-default.conf \/etc\/apache2\/sites-available\/example.com.conf<\/pre>\n\n\n\n<p>Uwaga&nbsp;: domy\u015blna konfiguracja Apache w Debianie 8 wymaga, aby ka\u017cdy plik wirtualnego hosta ko\u0144czy\u0142 si\u0119 rozszerzeniem&nbsp;<code>.conf<\/code>.<\/p>\n\n\n\n<p>Otwieramy nowy plik w edytorze:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">$ sudo nano \/etc\/apache2\/sites-available\/example.com.conf<\/pre>\n\n\n\n<p>Plik b\u0119dzie wygl\u0105da\u0142 tak, jak w przyk\u0142adzie poni\u017cej, z dodatkowymi komentarzami:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">\/etc\/apache2\/sites-available\/example.com.conf<br>&lt;VirtualHost *:80><br>        ServerAdmin webmaster@localhost<br>        DocumentRoot \/var\/www\/html<br>        ErrorLog ${APACHE_LOG_DIR}\/error.log<br>        CustomLog ${APACHE_LOG_DIR}\/access.log combined<br>&lt;\/VirtualHost><\/pre>\n\n\n\n<p>Ten wirtualny host pasuje do&nbsp;wszystkich&nbsp;\u017c\u0105da\u0144, kt\u00f3re s\u0105 tworzone w porcie&nbsp;80 &#8211; domy\u015blnym porcie HTTP.&nbsp;Zr\u00f3bmy kilka zmian w tej konfiguracji i dodajmy kilka nowych dyrektyw.<\/p>\n\n\n\n<p>Najpierw zmieniamy&nbsp;dyrektyw\u0119&nbsp;<code>ServerAdmin<\/code>&nbsp;na e-mail, przez kt\u00f3ry administrator witryny mo\u017ce odbiera\u0107 wiadomo\u015bci.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">\/etc\/apache2\/sites-available\/example.com.conf<br>ServerAdmin <a href=\"mailto:admin@example.com\">admin@example.com<\/a><\/pre>\n\n\n\n<p>Nast\u0119pnie musimy doda\u0107 dwie nowe dyrektywy.&nbsp;Pierwsza &#8211; &nbsp;<code>ServerName<\/code>, ustanawia nazw\u0119 domeny dla tego hosta.&nbsp;Druga &#8211;&nbsp;<code>ServerAlias<\/code>, definiuje dalsze nazwy domen, kt\u00f3re powinny odpowiada\u0107, tak jakby by\u0142y to domeny bazowe.<\/p>\n\n\n\n<p>Dodajemy te dwie dyrektywy do pliku konfiguracyjnego bezpo\u015brednio po linii&nbsp;<code>ServerAdmin<\/code>:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">\/etc\/apache2\/sites-available\/example.com.conf<br>&lt;VirtualHost *:80><br>        ServerAdmin webmaster@localhost<br>        ServerName example.com<br>        ServerAlias <a href=\"http:\/\/www.example.com\/\">www.example.com<\/a><br>        DocumentRoot \/var\/www\/html<br>&lt;\/VirtualHost><\/pre>\n\n\n\n<p>Nast\u0119pnie zmieniamy lokalizacj\u0119 g\u0142\u00f3wnego dokumentu dla tej domeny, zmieniaj\u0105c dyrektyw\u0119&nbsp;<code>DocumentRoot<\/code>, wskazuj\u0105c katalog utworzony dla tego hosta:<\/p>\n\n\n\n<p>DocumentRoot \/var\/www\/example.com\/public_html<\/p>\n\n\n\n<p>Po wprowadzeniu tych zmian plik powinien wygl\u0105da\u0107 tak:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">\/etc\/apache2\/sites-available\/example.com.conf<br>&lt;VirtualHost *:80><br>        ServerAdmin <a href=\"mailto:admin@example.com\">admin@example.com<\/a><br>        ServerName example.com<br>        ServerAlias <a href=\"http:\/\/www.example.com\/\">www.example.com<\/a><br>        DocumentRoot \/var\/www\/example.com\/public_html<br>        ErrorLog ${APACHE_LOG_DIR}\/error.log<br>        CustomLog ${APACHE_LOG_DIR}\/access.log combined<br>&lt;\/VirtualHost><\/pre>\n\n\n\n<p>Plik zapisujemy i zamykamy.<\/p>\n\n\n\n<p>Tworzymy drugi plik konfiguracyjny, tworz\u0105c kopi\u0119 tego pliku:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">$ sudo cp \/etc\/apache2\/sites-available\/example.com.conf \/etc\/apache2\/sites-available\/test.com.conf<\/pre>\n\n\n\n<p>I otwieramy w edytorze:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">$ sudo nano \/etc\/apache2\/sites-available\/test.com.conf<\/pre>\n\n\n\n<p>Nast\u0119pnie zmieniamy odpowiednie ustawienia, aby odnie\u015b\u0107 si\u0119 do drugiej domeny.&nbsp;Po zako\u0144czeniu plik b\u0119dzie wygl\u0105da\u0107 tak:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">\/etc\/apache2\/sites-available\/test.com.conf<br>&lt;VirtualHost *:80><br>    ServerAdmin <a href=\"mailto:admin@test.com\">admin@test.com<\/a><br>    ServerName test.com<br>    ServerAlias <a href=\"http:\/\/www.test.com\/\">www.test.com<\/a><br>    DocumentRoot \/var\/www\/test.com\/public_html<br>    ErrorLog ${APACHE_LOG_DIR}\/error.log<br>    CustomLog ${APACHE_LOG_DIR}\/access.log combined<br>&lt;\/VirtualHost><\/pre>\n\n\n\n<p>Zapisujemy i zamykamy.<\/p>\n\n\n\n<p>Teraz, gdy stworzyli\u015bmy pliki wirtualnego hosta, mo\u017cemy je w\u0142\u0105czy\u0107.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">Krok 4 - W\u0142\u0105czanie nowych plik\u00f3w wirtualnego hosta<\/pre>\n\n\n\n<p>Utworzyli\u015bmy foldery i pliki konfiguracyjne hosta wirtualnego, ale Apache nie u\u017cywa ich do momentu ich aktywacji.&nbsp;Za pomoc\u0105 narz\u0119dzia&nbsp;a2ensite mo\u017cna w\u0142\u0105czy\u0107 ka\u017cd\u0105 z witryn.<\/p>\n\n\n\n<p>W\u0142\u0105czamy pierwsz\u0105 witryn\u0119:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">$ sudo a2ensite example.com.conf<\/pre>\n\n\n\n<p>zostanie wy\u015bwietlony nast\u0119puj\u0105cy Output, je\u015bli w pliku nie wyst\u0105pi\u0142y b\u0142\u0119dy sk\u0142adniowe lub literowe:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">Output<br>Enabling site example.com.<br>To activate the new configuration, you need to run:<br>  service apache2 reload<\/pre>\n\n\n\n<p>Aby zmiany zacz\u0119\u0142y obowi\u0105zywa\u0107, musimy za\u0142adowa\u0107 Apache.&nbsp;Zanim to zrobimy, w\u0142\u0105czamy inne witryny:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">$ sudo a2ensite test.com.conf<\/pre>\n\n\n\n<p>Zobaczymy wiadomo\u015b\u0107 wskazuj\u0105c\u0105, \u017ce strona jest w\u0142\u0105czona:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">Output<br>Enabling site test.com.<br>To activate the new configuration, you need to run:<br>  service apache2 reload<\/pre>\n\n\n\n<p>Nast\u0119pnie wy\u0142\u0105czamy domy\u015bln\u0105 stron\u0119 zdefiniowan\u0105 w&nbsp;<code>000-default.conf<\/code>&nbsp;za pomoc\u0105&nbsp; polecenia a2dissite:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">$ sudo a2dissite 000-default.conf<\/pre>\n\n\n\n<p>Ponownie uruchamiamy Apache:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">$ sudo systemctl restart apache2<\/pre>\n\n\n\n<p>Witryny s\u0105 teraz skonfigurowane.&nbsp;Przetestujmy je.&nbsp;<\/p>\n\n\n\n<p><strong>Krok 5 &#8211; Konfigurowanie plik\u00f3w lokalnych host\u00f3w (opcjonalnie)<\/strong><\/p>\n\n\n\n<p>Je\u015bli u\u017cywali\u015bmy przyk\u0142adowych domen, mo\u017cemy przynajmniej przetestowa\u0107 funkcjonalno\u015b\u0107 tego procesu, tymczasowo modyfikuj\u0105c plik&nbsp;<code>hosts<\/code>&nbsp;na lokalnym komputerze.<\/p>\n\n\n\n<p>Spowoduje to przechwycenie wszelkich \u017c\u0105da\u0144 skonfigurowanych domen i wskazanie ich na serwerze VPS, podobnie jak system DNS m\u00f3g\u0142by to zrobi\u0107, je\u015bli u\u017cywali\u015bmy zarejestrowanych domen.&nbsp;<\/p>\n\n\n\n<p>To dzia\u0142a tylko na lokalnym urz\u0105dzeniu i jest u\u017cyteczne wy\u0142\u0105cznie w celach testowych.<\/p>\n\n\n\n<p>Upewniamy si\u0119, \u017ce wykonujemy te czynno\u015bci na komputerze lokalnym, a nie na serwerze VPS.&nbsp;Musimy tak\u017ce zna\u0107 has\u0142o administratora lub by\u0107 cz\u0142onkiem grupy administracyjnej.<\/p>\n\n\n\n<p>Na komputerze Mac lub Linux, edytujemy lokalny plik z uprawnieniami administratora, wpisuj\u0105c:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">$ sudo nano \/etc\/hosts<\/pre>\n\n\n\n<p>Je\u015bli korzystamy z systemu Windows, otwieramy wiersz polecenia z uprawnieniami administratora i wpisujemy:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">C:\\> notepad %windir%\\system32\\drivers\\etc\\hosts<\/pre>\n\n\n\n<p>Po otwarciu pliku dodajemy wiersz, kt\u00f3ry mapuje publiczny adres IP serwera na ka\u017cd\u0105 nazw\u0119 domeny, zgodnie z poni\u017cszym przyk\u0142adem:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">\/etc \/hosts<br>127.0.0.1   localhost<br>...<br>111.111.111.111 example.com<br>111.111.111.111 test.com<\/pre>\n\n\n\n<p>Spowoduje to skierowanie jakichkolwiek \u017c\u0105da\u0144&nbsp;<code>example.com<\/code>&nbsp;i&nbsp;<code>test.com<\/code>&nbsp;na lokalnym komputerze i ich wys\u0142anie na serwer w&nbsp;111.111.111.111.<\/p>\n\n\n\n<p>Zapisujemy i zamykamy plik.&nbsp;<\/p>\n\n\n\n<p>Teraz mo\u017cemy przetestowa\u0107 ustawienia.&nbsp;Kiedy mamy pewno\u015b\u0107, \u017ce rzeczy dzia\u0142aj\u0105, usuwamy te dwie linijki z pliku.<\/p>\n\n\n\n<p><strong>Krok 6 &#8211; testowanie wynik\u00f3w<\/strong><\/p>\n\n\n\n<p>Teraz, gdy mamy skonfigurowane wirtualne hosty, mo\u017cemy \u0142atwo przetestowa\u0107 konfiguracj\u0119, przechodz\u0105c do domen skonfigurowanych w przegl\u0105darce internetowej.&nbsp;Odwiedzamy pierwsz\u0105 witryn\u0119&nbsp;<a href=\"http:\/\/example.com\/\">http:\/\/example.com<\/a>. Naszym celem jest zobaczy\u0107 stron\u0119, kt\u00f3ra wygl\u0105da nast\u0119puj\u0105co:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">Success! The example.com virtual host is working!\n<\/pre>\n\n\n\n<p>Podobnie, je\u015bli mo\u017cesz odwiedzi\u0107 drugiego hosta&nbsp;http:\/\/test.com, aby zobaczy\u0107:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">Success! The test.com virtual host is working!\n<\/pre>\n\n\n\n<p>Je\u015bli obie te witryny dzia\u0142aj\u0105, pomy\u015blnie, skonfigurowali\u015bmy dwa wirtualne hosty na tym samym serwerze.<\/p>\n\n\n\n<p><strong>Podsumowanie.<\/strong><\/p>\n\n\n\n<p>Od teraz mamy pojedynczy serwer obs\u0142uguj\u0105cy dwie oddzielne nazwy domen.&nbsp;Mo\u017cna rozszerzy\u0107 go dalej, wykonuj\u0105c powy\u017csze czynno\u015bci, aby utworzy\u0107 dodatkowe wirtualne hosty.<br>Nie ma ogranicze\u0144 programowych dotycz\u0105cych ilo\u015bci nazw domen, kt\u00f3re Apache mo\u017ce obs\u0142u\u017cy\u0107, wi\u0119c mo\u017cemy swobodnie tworzy\u0107 dowoln\u0105 liczb\u0119 serwer\u00f3w.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Wprowadzenie Serwer Apache jest jednym z najcz\u0119\u015bciej stosowanych rozwi\u0105za\u0144 do obs\u0142ugi stron internetowych, stanowi\u0105c ponad 50% wszystkich aktywnych witryn w Internecie. Jego ogromna elastyczno\u015b\u0107 sprawia, \u017ce jest idealnym wyborem dla r\u00f3\u017cnych aplikacji i konfiguracji. W architekturze Apache funkcjonalno\u015b\u0107 i komponenty s\u0105 podzielone na jednostki, co pozwala na niezale\u017cne dostosowywanie ich do specyficznych potrzeb. Podstawow\u0105 jednostk\u0105, [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[7],"tags":[],"class_list":["post-1899","post","type-post","status-publish","format-standard","hentry","category-vps"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.2 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>VPS: jak skonfigurowa\u0107 wirtualne hosty Apache w systemie Debian 11 - Blog<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.statnet.pl\/blog\/vps\/vps-jak-skonfigurowac-wirtualne-hosty-apache-w-systemie-debian-11\/\" \/>\n<meta property=\"og:locale\" content=\"pl_PL\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"VPS: jak skonfigurowa\u0107 wirtualne hosty Apache w systemie Debian 11 - Blog\" \/>\n<meta property=\"og:description\" content=\"Wprowadzenie Serwer Apache jest jednym z najcz\u0119\u015bciej stosowanych rozwi\u0105za\u0144 do obs\u0142ugi stron internetowych, stanowi\u0105c ponad 50% wszystkich aktywnych witryn w Internecie. Jego ogromna elastyczno\u015b\u0107 sprawia, \u017ce jest idealnym wyborem dla r\u00f3\u017cnych aplikacji i konfiguracji. W architekturze Apache funkcjonalno\u015b\u0107 i komponenty s\u0105 podzielone na jednostki, co pozwala na niezale\u017cne dostosowywanie ich do specyficznych potrzeb. Podstawow\u0105 jednostk\u0105, [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.statnet.pl\/blog\/vps\/vps-jak-skonfigurowac-wirtualne-hosty-apache-w-systemie-debian-11\/\" \/>\n<meta property=\"og:site_name\" content=\"Blog\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/statnetpl\/\" \/>\n<meta property=\"article:published_time\" content=\"2024-12-30T13:12:13+00:00\" \/>\n<meta name=\"author\" content=\"admin\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Napisane przez\" \/>\n\t<meta name=\"twitter:data1\" content=\"admin\" \/>\n\t<meta name=\"twitter:label2\" content=\"Szacowany czas czytania\" \/>\n\t<meta name=\"twitter:data2\" content=\"7 minut\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.statnet.pl\/blog\/vps\/vps-jak-skonfigurowac-wirtualne-hosty-apache-w-systemie-debian-11\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.statnet.pl\/blog\/vps\/vps-jak-skonfigurowac-wirtualne-hosty-apache-w-systemie-debian-11\/\"},\"author\":{\"name\":\"admin\",\"@id\":\"https:\/\/www.statnet.pl\/blog\/#\/schema\/person\/a66bac7f0cb7c00f25b2e41ae6b90a27\"},\"headline\":\"VPS: jak skonfigurowa\u0107 wirtualne hosty Apache w systemie Debian 11\",\"datePublished\":\"2024-12-30T13:12:13+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.statnet.pl\/blog\/vps\/vps-jak-skonfigurowac-wirtualne-hosty-apache-w-systemie-debian-11\/\"},\"wordCount\":1469,\"publisher\":{\"@id\":\"https:\/\/www.statnet.pl\/blog\/#organization\"},\"articleSection\":[\"VPS\"],\"inLanguage\":\"pl-PL\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.statnet.pl\/blog\/vps\/vps-jak-skonfigurowac-wirtualne-hosty-apache-w-systemie-debian-11\/\",\"url\":\"https:\/\/www.statnet.pl\/blog\/vps\/vps-jak-skonfigurowac-wirtualne-hosty-apache-w-systemie-debian-11\/\",\"name\":\"VPS: jak skonfigurowa\u0107 wirtualne hosty Apache w systemie Debian 11 - Blog\",\"isPartOf\":{\"@id\":\"https:\/\/www.statnet.pl\/blog\/#website\"},\"datePublished\":\"2024-12-30T13:12:13+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/www.statnet.pl\/blog\/vps\/vps-jak-skonfigurowac-wirtualne-hosty-apache-w-systemie-debian-11\/#breadcrumb\"},\"inLanguage\":\"pl-PL\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.statnet.pl\/blog\/vps\/vps-jak-skonfigurowac-wirtualne-hosty-apache-w-systemie-debian-11\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.statnet.pl\/blog\/vps\/vps-jak-skonfigurowac-wirtualne-hosty-apache-w-systemie-debian-11\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Strona g\u0142\u00f3wna\",\"item\":\"https:\/\/www.statnet.pl\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"VPS: jak skonfigurowa\u0107 wirtualne hosty Apache w systemie Debian 11\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.statnet.pl\/blog\/#website\",\"url\":\"https:\/\/www.statnet.pl\/blog\/\",\"name\":\"Blog\",\"description\":\"Artyku\u0142y na blogu to \u017ar\u00f3d\u0142o wiedzy na temat najnowszych trend\u00f3w w hostingu. Odkryjmy razem, jak wykorzysta\u0107 technologi\u0119, aby zwi\u0119kszy\u0107 wydajno\u015b\u0107 i bezpiecze\u0144stwo Twojej strony.\",\"publisher\":{\"@id\":\"https:\/\/www.statnet.pl\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.statnet.pl\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"pl-PL\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.statnet.pl\/blog\/#organization\",\"name\":\"STATNET Online\",\"url\":\"https:\/\/www.statnet.pl\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pl-PL\",\"@id\":\"https:\/\/www.statnet.pl\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.statnet.pl\/blog\/wp-content\/uploads\/2023\/12\/logo-statnet-online.png\",\"contentUrl\":\"https:\/\/www.statnet.pl\/blog\/wp-content\/uploads\/2023\/12\/logo-statnet-online.png\",\"width\":612,\"height\":174,\"caption\":\"STATNET Online\"},\"image\":{\"@id\":\"https:\/\/www.statnet.pl\/blog\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/statnetpl\/\",\"https:\/\/www.linkedin.com\/company\/statnet\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.statnet.pl\/blog\/#\/schema\/person\/a66bac7f0cb7c00f25b2e41ae6b90a27\",\"name\":\"admin\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pl-PL\",\"@id\":\"https:\/\/secure.gravatar.com\/avatar\/7ed188afabbacca054be22697b8b3958ab3de3cf3543bb508322b87476efc132?s=96&d=mm&r=g\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/7ed188afabbacca054be22697b8b3958ab3de3cf3543bb508322b87476efc132?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/7ed188afabbacca054be22697b8b3958ab3de3cf3543bb508322b87476efc132?s=96&d=mm&r=g\",\"caption\":\"admin\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"VPS: jak skonfigurowa\u0107 wirtualne hosty Apache w systemie Debian 11 - Blog","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.statnet.pl\/blog\/vps\/vps-jak-skonfigurowac-wirtualne-hosty-apache-w-systemie-debian-11\/","og_locale":"pl_PL","og_type":"article","og_title":"VPS: jak skonfigurowa\u0107 wirtualne hosty Apache w systemie Debian 11 - Blog","og_description":"Wprowadzenie Serwer Apache jest jednym z najcz\u0119\u015bciej stosowanych rozwi\u0105za\u0144 do obs\u0142ugi stron internetowych, stanowi\u0105c ponad 50% wszystkich aktywnych witryn w Internecie. Jego ogromna elastyczno\u015b\u0107 sprawia, \u017ce jest idealnym wyborem dla r\u00f3\u017cnych aplikacji i konfiguracji. W architekturze Apache funkcjonalno\u015b\u0107 i komponenty s\u0105 podzielone na jednostki, co pozwala na niezale\u017cne dostosowywanie ich do specyficznych potrzeb. Podstawow\u0105 jednostk\u0105, [&hellip;]","og_url":"https:\/\/www.statnet.pl\/blog\/vps\/vps-jak-skonfigurowac-wirtualne-hosty-apache-w-systemie-debian-11\/","og_site_name":"Blog","article_publisher":"https:\/\/www.facebook.com\/statnetpl\/","article_published_time":"2024-12-30T13:12:13+00:00","author":"admin","twitter_card":"summary_large_image","twitter_misc":{"Napisane przez":"admin","Szacowany czas czytania":"7 minut"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.statnet.pl\/blog\/vps\/vps-jak-skonfigurowac-wirtualne-hosty-apache-w-systemie-debian-11\/#article","isPartOf":{"@id":"https:\/\/www.statnet.pl\/blog\/vps\/vps-jak-skonfigurowac-wirtualne-hosty-apache-w-systemie-debian-11\/"},"author":{"name":"admin","@id":"https:\/\/www.statnet.pl\/blog\/#\/schema\/person\/a66bac7f0cb7c00f25b2e41ae6b90a27"},"headline":"VPS: jak skonfigurowa\u0107 wirtualne hosty Apache w systemie Debian 11","datePublished":"2024-12-30T13:12:13+00:00","mainEntityOfPage":{"@id":"https:\/\/www.statnet.pl\/blog\/vps\/vps-jak-skonfigurowac-wirtualne-hosty-apache-w-systemie-debian-11\/"},"wordCount":1469,"publisher":{"@id":"https:\/\/www.statnet.pl\/blog\/#organization"},"articleSection":["VPS"],"inLanguage":"pl-PL"},{"@type":"WebPage","@id":"https:\/\/www.statnet.pl\/blog\/vps\/vps-jak-skonfigurowac-wirtualne-hosty-apache-w-systemie-debian-11\/","url":"https:\/\/www.statnet.pl\/blog\/vps\/vps-jak-skonfigurowac-wirtualne-hosty-apache-w-systemie-debian-11\/","name":"VPS: jak skonfigurowa\u0107 wirtualne hosty Apache w systemie Debian 11 - Blog","isPartOf":{"@id":"https:\/\/www.statnet.pl\/blog\/#website"},"datePublished":"2024-12-30T13:12:13+00:00","breadcrumb":{"@id":"https:\/\/www.statnet.pl\/blog\/vps\/vps-jak-skonfigurowac-wirtualne-hosty-apache-w-systemie-debian-11\/#breadcrumb"},"inLanguage":"pl-PL","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.statnet.pl\/blog\/vps\/vps-jak-skonfigurowac-wirtualne-hosty-apache-w-systemie-debian-11\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.statnet.pl\/blog\/vps\/vps-jak-skonfigurowac-wirtualne-hosty-apache-w-systemie-debian-11\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Strona g\u0142\u00f3wna","item":"https:\/\/www.statnet.pl\/blog\/"},{"@type":"ListItem","position":2,"name":"VPS: jak skonfigurowa\u0107 wirtualne hosty Apache w systemie Debian 11"}]},{"@type":"WebSite","@id":"https:\/\/www.statnet.pl\/blog\/#website","url":"https:\/\/www.statnet.pl\/blog\/","name":"Blog","description":"Artyku\u0142y na blogu to \u017ar\u00f3d\u0142o wiedzy na temat najnowszych trend\u00f3w w hostingu. Odkryjmy razem, jak wykorzysta\u0107 technologi\u0119, aby zwi\u0119kszy\u0107 wydajno\u015b\u0107 i bezpiecze\u0144stwo Twojej strony.","publisher":{"@id":"https:\/\/www.statnet.pl\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.statnet.pl\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"pl-PL"},{"@type":"Organization","@id":"https:\/\/www.statnet.pl\/blog\/#organization","name":"STATNET Online","url":"https:\/\/www.statnet.pl\/blog\/","logo":{"@type":"ImageObject","inLanguage":"pl-PL","@id":"https:\/\/www.statnet.pl\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.statnet.pl\/blog\/wp-content\/uploads\/2023\/12\/logo-statnet-online.png","contentUrl":"https:\/\/www.statnet.pl\/blog\/wp-content\/uploads\/2023\/12\/logo-statnet-online.png","width":612,"height":174,"caption":"STATNET Online"},"image":{"@id":"https:\/\/www.statnet.pl\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/statnetpl\/","https:\/\/www.linkedin.com\/company\/statnet"]},{"@type":"Person","@id":"https:\/\/www.statnet.pl\/blog\/#\/schema\/person\/a66bac7f0cb7c00f25b2e41ae6b90a27","name":"admin","image":{"@type":"ImageObject","inLanguage":"pl-PL","@id":"https:\/\/secure.gravatar.com\/avatar\/7ed188afabbacca054be22697b8b3958ab3de3cf3543bb508322b87476efc132?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/7ed188afabbacca054be22697b8b3958ab3de3cf3543bb508322b87476efc132?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/7ed188afabbacca054be22697b8b3958ab3de3cf3543bb508322b87476efc132?s=96&d=mm&r=g","caption":"admin"}}]}},"_links":{"self":[{"href":"https:\/\/www.statnet.pl\/blog\/wp-json\/wp\/v2\/posts\/1899","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.statnet.pl\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.statnet.pl\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.statnet.pl\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.statnet.pl\/blog\/wp-json\/wp\/v2\/comments?post=1899"}],"version-history":[{"count":1,"href":"https:\/\/www.statnet.pl\/blog\/wp-json\/wp\/v2\/posts\/1899\/revisions"}],"predecessor-version":[{"id":1900,"href":"https:\/\/www.statnet.pl\/blog\/wp-json\/wp\/v2\/posts\/1899\/revisions\/1900"}],"wp:attachment":[{"href":"https:\/\/www.statnet.pl\/blog\/wp-json\/wp\/v2\/media?parent=1899"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.statnet.pl\/blog\/wp-json\/wp\/v2\/categories?post=1899"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.statnet.pl\/blog\/wp-json\/wp\/v2\/tags?post=1899"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}