Okna.  Wirusy.  Laptopy.  Internet.  Biuro.  Narzędzia.  Kierowcy

Kilka witryn, a następnie Apache zapewnia możliwość konfiguracji do tych celów wirtualne hosty(hosty wirtualne). Istnieją dwa typy hostów wirtualnych: wirtualne hosty oparte na nazwach, czyli powiązane z nazwą domeny i Hosty wirtualne oparte na protokole IP, czyli powiązany z adresem IP. Pierwszy typ hostów wirtualnych używa różnych nazw dla jednego adresu IP, podczas gdy drugi typ używa osobnego adresu IP dla każdej witryny. Tworzenie wirtualnych hostów w Apache jest konieczne, jeśli Twój serwer ma kilka witryn, a ich konfiguracja jest konieczna, aby poprawnie wyświetlić wszystkie witryny.

Najbardziej powszechnym jest użycie wirtualnych hostów opartych na nazwach, powiązanych z jednym adresem IP. W ten sposób możesz przechowywać wiele witryn na jednym adresie IP.

Najbardziej w prosty sposób dodawanie, a następnie konfigurowanie wirtualnych hostów Apache wiąże się z edycją pliku konfiguracyjnego serwera WWW, który ma różne nazwy i lokalizacje w zależności od systemu operacyjnego:

W Czerwony kapelusz/CentOS/Fedora:

/etc/httpd/conf/httpd.conf

Debiana/Ubuntu:

/etc/apache2/apache2.conf

Drugim sposobem konfiguracji jest użycie własnego .conf pliki, które powinny znajdować się wzdłuż ścieżki:

W Czerwony kapelusz/CentOS/Fedora:

/etc/httpd/conf.d/nazwapliku.conf,

Debiana/Ubuntu:

/etc/apache2/conf.d/nazwa_pliku.conf.

Zwykle w pliku konfiguracyjnym httpd.conf Lub Apache2.conf sekcja zarządzania hostami wirtualnymi znajduje się na samym końcu. Aby dodać hosta wirtualnego, musisz otworzyć ten plik i odkomentować go (usuń # ) dyrektywa NazwaWirtualny Host *:80(Argument * oznacza „wszystkie nazwy hostów”). Jeśli korzystasz z metody umieszczania konfiguracji w konf.d, wówczas określona dyrektywa nie musi być odkomentowana, ale powinna być zdefiniowana w samym utworzonym pliku.

Po NazwaWirtualny Host podąża za blokiem Host wirtualny *:80. Takie bloki stanowią konfigurację Twoich wirtualnych hostów. Wszystko wygląda mniej więcej tak:

NazwaWirtualny Host *:80 Zezwalaj na zastąpienie wszystkich opcji Wszystkie Administrator serwera [e-mail chroniony] DocumentRoot /var/www/site1.ru ServerName site1.ru ServerAlias ​​​​www.site1.ru ErrorLog logs/site1.ru-error_log CustomLog logs/site1.ru-access_log common Administrator serwera [e-mail chroniony] DocumentRoot /var/www/site2.ru NazwaSerwera site2.ru ServerAlias ​​​​www.site2.ru Dziennik błędów logs/site2.ru-error_log CustomLog logs/site2.ru-access_log common

Tutaj dokonuje się wszystkich ustawień hostów wirtualnych, a także włącza lub wyłącza niektóre opcje.

Przyjrzyjmy się bliżej, za co odpowiada każda z powyższych dyrektyw.

1. Dyrektywa Administrator serwera wskazuje adres e-mail administrator serwera, do którego trafiają wszelkie powiadomienia od hosta dotyczące jego administrowania.

2. Dyrektywa DokumentRoot wskazuje katalog główny z plikami witryny, które zostaną wydane przez serwer WWW klientowi (przeglądarce).

3. Dyrektywa Nazwa serwera definiuje nazwę hosta, na którego żądanie zostaną zwrócone pliki znajdujące się w DocumentRoot.

4. Dyrektywa Alias ​​serwera służy do określenia alternatywnych nazw hostów (aliasów, aliasów), na które odpowiada.

5. Dyrektywa Dziennik błędów określa pliki dziennika błędów dla każdego hosta oraz Dziennik niestandardowy– pliki dziennika dotyczące wszystkiego innego z wyjątkiem błędów.

Przed blokami z wirtualnymi hostami, jak zauważyłeś, jest jeszcze jeden wpis:

Zezwalaj na zastąpienie wszystkich

W tagach zawiera listę dyrektyw (parametrów), które zostaną zastosowane do konkretnego katalogu, co jest wskazane w tagu otwierającym. W powyższym przykładzie tak jest var/www/. Określona dyrektywa Zezwól na zastąpienie określa, czy używać plików .htaccess a jeśli tak, jakie dyrektywy globalnego serwera WWW można zastąpić w takich plikach. W powyższym przykładzie wartość Zezwól na zastąpienie zainstalowany w Wszystko, który umożliwia przetwarzanie plików .htaccess i wszystkich określonych w nim dyrektyw. Istnieją inne możliwe znaczenia:

Konfiguracja uwierzytelniania– pozwala na użycie dyrektyw autoryzacyjnych (AuthDBMGroupFile, AuthDBMUserFile, AuthGroupFile, AuthName, AuthType, AuthUserFile, require itp.).

Informacje o pliku– pozwala na użycie dyrektyw kontrolujących typy dokumentów (AddEncoding, AddLanguage, AddType, DefaultType, ErrorDocument, LanguagePriority itp.).

Indeksy— pozwala na użycie dyrektyw do kontroli indeksowania katalogów (AddDescription, AddIcon, AddIconByEncoding, AddIconByType, DefaultIcon, DirectoryIndex, FancyIndexing, HeaderName, IndexIgnore, IndexOptions, ReadmeName itp.).

Limit— pozwala na użycie dyrektyw kontroli dostępu (zezwól, odmów i zamów).

Opcje— pozwala na użycie dyrektyw, za pomocą których można kontrolować określone funkcje katalogu (Opcje i XBitHack).

To jedna z wielu możliwych dyrektyw, o których możesz przeczytać na stronie deweloperów.

Po zapisaniu zmian w pliku należy sprawdzić nowe ustawienia pod kątem błędów. Aby przeprowadzić kontrolę, możesz użyć następujących poleceń:

Test konfiguracji Apachectl apachectl -S apachectl -d

Jeśli komunikat „ Składnia OK”, oznacza to, że nie ma żadnych błędów i możesz ponownie uruchomić serwer WWW, aby zmiany zaczęły obowiązywać. Można to zrobić za pomocą następujących poleceń:

Red-Hat/CentOS/Fedora:

Uruchomienie usługi httpd

/etc/init.d/ httpd uruchom ponownie

Debian/Ubuntu:

Uruchom ponownie usługę Apache2

/etc/init.d/apache2 uruchom ponownie

Następnie możesz napotkać następujący problem. Kiedy przychodzi żądanie, Apache przegląda całą listę wirtualnych hostów w poszukiwaniu dopasowania, a jeśli nie znajdzie dopasowania, zwraca pierwszy host w kolejności. Aby wyeliminować ten problem, eksperci wymyślili tzw. pustą sekcję, którą należy wstawić przed pierwszą sekcją Wirtualny Host prawdziwa witryna. Wygląda to mniej więcej tak:

Nazwa serwera domyślny DocumentRoot /var/www/default

W ten sposób wszystkie nieprawidłowe żądania zostaną wysłane wzdłuż ścieżki var/www/default, na którym możesz utworzyć stronę indeksową, która będzie zgłaszać nieprawidłowe żądanie.

Ponadto Apache domyślnie nie ma dostępu do twoich katalogów domowych, a jedynie do katalogu /var/www. Jeśli używasz SElinux na swoim serwerze, użyj następujących poleceń, aby dać Apache'owi dostęp do twoich katalogów domowych:

Setsebool -P httpd_enable_homedirs 1

Setsebool -P Apache2_enable_homedirs 1

Aby Apache miał dostęp do określonego katalogu, np. /home/mójkatalog należy użyć polecenia:

Chcon -R -t httpd_sys_content_t /home/mydir

Chcon -R -t apache2_sys_content_t /home/mójkatalog

Gdy wyłączone SELinux Aby zapewnić Apache'owi dostęp do katalogu domowego określonej witryny, musisz ręcznie edytować jego plik konfiguracyjny ( /etc/httpd/conf/httpd.conf V CentOS/Fedora Lub /etc/apache2/apache2.conf V Debiana/Ubuntu).

Po otwarciu pliku konfiguracyjnego serwera WWW do edycji znajdź wiersz DokumentRoot(przy użyciu redaktor nano można go znaleźć za pomocą kombinacji klawiszy Ctrl+W). Zamień wartość w cudzysłowie /var/www/html do ścieżki bezwzględnej do katalogu domowego witryny (na przykład /home/nazwa użytkownika/site.com). Zapisz zmiany i wyjdź z menu edytora ( Ctrl+O I Ctrl+X). Uruchom ponownie Apache'a.

Jeśli masz zainstalowany system operacyjny na swoim VPS Debiana/Ubuntu, a następnie edytuj linię DokumentRoot wymagane w pliku /etc/apache2/sites-available/default. Otwórz go do edycji i zastąp wartość domyślną /var/www do ścieżki bezwzględnej do katalogu domowego witryny. Uruchom ponownie serwer WWW.

Na tym konfiguracja podstawowa wirtualne hosty dobiegły końca.

To jest uwaga na temat konfigurowania serwera WWW w systemie Windows, można ją uznać za kontynuację artykułu „”. Materiał jest w przygotowaniu, jednak w związku z otrzymaniem pytania, na które zawiera odpowiedź, zdecydowano się opublikować go w tej formie.

Łączenie wirtualnych hostów Apache w systemie Windows

Hosty wirtualne można powiązać z nazwą hosta (np. study.loc), adresem IP (np. 127.0.0.3) i portem (*:81). Druga i trzecia metoda są dobre, ponieważ nie musimy rozwiązywać problemu tłumaczeń DNS naszej nazwy wirtualnego hosta (zwykle osiąga się to poprzez zmianę pliku systemowego lub wykorzystanie osobistego serwera DNS z odpowiednimi rekordami).

Rozważmy wszystkie trzy metody. Ale zacznijmy od małego przygotowania. Stwórzmy katalog, w którym umieścimy nasze wirtualne hosty. Na przykład, . W tym katalogu utworzymy trzy nowe foldery: gospodarz1, gospodarz2, gospodarz3. W każdym z nich utwórz plik indeksu ( indeks.html) z dowolną treścią, która pozwoliłaby Ci zidentyfikować, że jesteś na właściwym hoście. Dokonam następujących wpisów w odpowiednich plikach indeksu hostów dla pierwszego hosta:

Dotarłeś do hosta 1.

Dla drugiego:

Dotarłeś do hosta 2.

Dla trzeciego:

Dotarłeś do hosta 3.

Teraz zacznijmy konfigurować wirtualne hosty.

Gęsiego

W pliku skomentuj (lub usuń) linie domyślne.

Hosty wirtualne oparte na protokole IP

Hosty wirtualne powiązane z adresem IP wymagają wielu adresów IP. Jednak na serwerze lokalnym możesz wykonać tę sztuczkę, ponieważ w IPv4 wartość 127.0.0.1 odzwierciedla również dowolny adres z zakresu od 127.0.0.0 do 127.255.255.255.

Spróbuj wpisać 127.0.0.1 w przeglądarce, a następnie spróbuj 127.0.0.2, 127.0.0.3, 127.0.0.4, 127.0.0.5 itd. Jak widać adresów IP mamy sporo i do każdego z nich można przypisać wirtualne hosty.

Dodaj do pliku C:\Serwer\bin\Apache24\conf\extra\httpd-vhosts.conf następujące linie:

Administrator serwera [e-mail chroniony] DocumentRoot "C:/Server/data/htdocs/virthosts/host2/"

Zrestartuj serwer WWW (uruchom ponownie po każdej zmianie pliku konfiguracyjnego):

C:\Serwer\bin\Apache24\bin\httpd.exe -k uruchom ponownie

Jednocześnie nasze ustawienia nie mają wpływu na inne adresy IP 127.0.0.*, a także na localhost.

Hosty wirtualne oparte na portach (różne witryny na różnych portach)

Teraz dodaj do pliku C:\Serwer\bin\Apache24\conf\extra\httpd-vhosts.conf kwestia:

Posłuchaj 81 Administrator serwera [e-mail chroniony] DocumentRoot "C:/Server/data/htdocs/virthosts/host3/"

Możesz zastąpić port dowolnym innym, który nie jest używany w Twoim systemie. Zamiast gwiazdki możesz także określić konkretny adres IP. Uruchom ponownie i otwórz http://localhost:81 w swojej przeglądarce:

Hosty wirtualne na podstawie nazwy hosta

Poniższa metoda wymaga edycji pliku C:\Windows\System32\drivers\etc\hosts(lub dokonanie wpisu na własnym serwerze DNS). Wymyśl dowolną nazwę hosta, najlepiej taką, która nie odpowiada prawdziwej. Przykłady supersite, study.loc, video.ofme. Wezmę jako przykład studium.loc. Otwórz plik C:\Windows\System32\drivers\etc\hosts i tam dodaj:

127.0.0.1 badanie.loc

I do pliku C:\Serwer\bin\Apache24\conf\extra\httpd-vhosts.conf dodaj linie:

NazwaSerwera localhost DocumentRoot "C:/Server/data/htdocs/" NazwaSerwera study.loc DocumentRoot "C:/Server/data/htdocs/virthosts/host1/"

Zrestartuj serwer i przejdź do:

Subdomeny konfiguruje się w ten sam sposób (dir1.study.loc, dir2.study.loc, dir3.localhost itp.).

Automatyczne tworzenie wirtualnych hostów/subdomen

Gęsiego C:\Serwer\bin\Apache24\conf\httpd.conf znajdź i odkomentuj następujący wiersz:

LoadModule moduły vhost_alias_module/mod_vhost_alias.so

A także, jeśli nie robiłeś tego wcześniej, linia:

Dołącz plik conf/extra/httpd-vhosts.conf

W katalogu C:\Serwer\dane\htdocs\virthosts\ utwórz folder lokalny host(teraz jego zawartość zostanie wyświetlona po wpisaniu http://localhost w przeglądarce).

Do pliku C:\Serwer\bin\Apache24\conf\extra\httpd-vhosts.conf dodaj następującą linię

VirtualDocumentRoot "C:/Server/data/htdocs/virthosts/%1/"

Uruchom ponownie serwer.

Teraz każdy folder utworzony w C:\Serwer\dane\htdocs\virthosts\ będzie dostępny pod adresem np

Http://nazwa_folderu.localhost

Konfiguracja protokołu SSL dla Apache w systemie Windows (migracja z HTTP do HTTPS)

Jeśli chcesz używać protokołu SSL na serwerze WWW Apache w systemie Windows, potrzebujesz trzech plików: *.key, *.csr i *.crt. Jeśli kupiłeś ważny Certyfikat SSL dla Twojej witryny, pliki te powinny zostać przesłane do Ciebie po zakupie. Może ich być więcej – wśród nich mogą znajdować się certyfikaty pośrednie.

Jeśli chcesz skonfigurować SSL na lokalnym serwerze WWW, wszystkie te pliki możesz wygenerować samodzielnie, tj. utwórz certyfikat z podpisem własnym. Certyfikat ten jest nieważny (nie może zostać zweryfikowany przez osobę trzecią), ale w zupełności nadaje się do ćwiczenia przejścia z HTTP na HTTPS.

Zakłada się, że zainstalowałeś serwer WWW - w przeciwnym razie zamień ścieżki bezwzględne na własne.

Otwórz wiersz poleceń systemu Windows ( WYGRAJ+x, a następnie wybierz „ Linia poleceń„). W wierszu poleceń wprowadź polecenia:

Cd C:\Server\bin\Apache24\bin\ set OPENSSL_CONF=C:\Server\bin\Apache24\conf\openssl.cnf openssl.exe genpkey -algorithm RSA -pkeyopt rsa_keygen_bits:2048 -out localhost.key openssl.exe req -nowy -key localhost.key -out localhost.csr

Po wprowadzeniu ostatniego polecenia monity pojawią się w języku angielskim. Poniżej znajduje się ich tłumaczenie.

Zaraz zostaniesz poproszony o podanie informacji, które zostaną uwzględnione w Twoim żądaniu certyfikatu. To, co zamierzasz wprowadzić, to tak zwana nazwa wyróżniająca lub nazwa wyróżniająca. Jest sporo pól, ale możesz pozostaw puste Dla niektórych pól będzie wartość domyślna. Jeśli wpiszesz „.”, pole pozostanie puste. -----

Zostaniesz poproszony o podanie informacji, które zostaną uwzględnione we wniosku o wydanie certyfikatu. To, co wprowadzisz, nazywa się nazwą wyróżniającą lub DN. Istnieje tylko kilka pól, które można pozostawić puste. Niektóre pola będą miały wartości domyślne. Jeśli wpiszesz „.”, pole pozostanie puste.

Nazwa kraju (2-literowy kod):

Dwuliterowa nazwa kraju (dwuliterowy kod)

Nazwa stanu lub prowincji (pełna nazwa):

Nazwa stanu lub prowincji/prowincji (pełna nazwa)

Nazwa miejscowości (np. miasto):

Nazwa miejscowości (na przykład miasto)

Nazwa organizacji (np. firma):

Nazwa organizacji (tj. firmy).

Nazwa jednostki organizacyjnej (np. sekcja):

Pion organizacyjny (tj. dział)

Nazwa zwyczajowa (np. FQDN serwera lub TWOJA nazwa):

Nazwa zwyczajowa (taka jak nazwa FQDN serwera lub TWOJA nazwa). Możesz wpisać localhost.

Adres e-mail:

Adres pocztowy

Proszę wejść następujące„dodatkowe” atrybuty, które należy przesłać wraz z żądaniem certyfikatu. Hasło wezwania: Opcjonalna nazwa firmy:

Wprowadź następujące „opcjonalne” atrybuty, które chcesz przesłać wraz z żądaniem certyfikatu

  • Poproś o hasło:
  • Opcjonalna nazwa firmy:

Teraz uruchom polecenie:

Openssl.exe x509 -req -dni 365 -in localhost.csr -signkey localhost.key -out localhost.crt

W rezultacie w katalogu C:\Server\bin\Apache24\bin\ powinny pojawić się trzy nowe pliki:

  • localhost.key
  • localhost.csr
  • localhost.crt

Potrzebujemy tylko dwóch z nich:

  • localhost.key
  • localhost.crt

W przypadku korzystania z certyfikatów do skonfigurowania prawdziwej witryny internetowej wygodniej jest utworzyć hosta wirtualnego z mniej więcej następującymi ustawieniami:

NazwaSerwera www.example.com SSLEngine w pliku SSLCertificateFile „/path/to/www.example.com.crt” SSLCertificateKeyFile „/path/to/www.example.com.key”

Aby skonfigurować użycie protokołu SSL na lokalnym serwerze WWW Apache w systemie Windows, wykonaj poniższe instrukcje.

W katalogu C:\Serwer\ utwórz nowy folder certyfikaty i tam przenieś pliki localhost.key I localhost.crt.

W katalogu C:\Serwer\bin\Apache24\conf\ otwórz plik za pomocą edytora tekstu httpd.conf. Na samym dole dodaj następujące linie:

LoadModule ssl_module moduły/mod_ssl.so Słuchaj 443 DocumentRoot "c:/Server/data/htdocs/" NazwaSerwera localhost:443 ServerAdmin [e-mail chroniony] ErrorLog "$(SRVROOT)/logs/error-ssl.log" TransferLog "$(SRVROOT)/logs/access-ssl.log" SSLEngine na SSLCertificateFile "C:\Server\certs\localhost.crt" SSLCertificateKeyFile "C:\ Serwer\certyfikaty\localhost.key"

Pamiętaj, że może być konieczna edycja następujących dyrektyw

  • DokumentRoot— określ ścieżkę do witryn na serwerze
  • Nazwa Serwera— wskaż nazwę swojego hosta, jeśli nie jest to localhost

Pamiętaj, że nie tylko umieściliśmy te linie w pliku konfiguracyjnym, ale zawinęliśmy je w kontenerze Wirtualny Host. Rzecz w tym, że jeśli tego się nie zrobi, to dyrektywa SSLsilnik włączony włączy SSL dla całego serwera WWW i nawet przy próbie otwarcia stron na porcie 80 połączenia te będą traktowane jako HTTPS, co spowoduje błąd ” Złe żądanie. Twoja przeglądarka wysłała żądanie, którego ten serwer nie mógł zrozumieć.” Z tego powodu te ustawienia są umieszczane w kontenerze hosta wirtualnego. Należy pamiętać, że jest używany słowo kluczowe _default_ - czyli wszystkie żądania dotyczące portu 443 będą tutaj zbierane, jeśli nie są przeznaczone dla innego hosta, który również jest skonfigurowany. Oznacza to, że jeśli chcesz, możesz utworzyć więcej wirtualnych hostów do pracy z HTTPS i zamiast _domyślny_ określ adres IP lub symbol hosta * (gwiazda).

Następnie zapisz zmiany, zamknij plik i uruchom ponownie serwer WWW.

Aby sprawdzić dokonane zmiany należy udać się pod adres (protokół HTTPS). Ponieważ certyfikat jest samopodpisany, pojawi się następujący komunikat:

Certyfikaty z podpisem własnym nie są zaufane i tego błędu nie można usunąć bez dodania takich certyfikatów do zaufanych. Aby kontynuować, kliknij „Kontynuuj mimo to”.

Możesz otrzymać naprawdę ważne certyfikaty dla swoich stron internetowych (w tym bezpłatne na dowolny okres czasu).

plik .bat do zarządzania serwerem (instalacja serwera, uruchomienie, restart itp.)

Utwórz plik URUCHOM.bat i skopiuj do niego:

Zwiększać

:start @ECHO OFF TITLE Zarządzanie lokalnym serwerem Apache %TIME:~0.8% %DATE% echo Autor: Alexey Miloserdov (miloserdov.?p=21 echo ++++++++++++++++ + +++++++++++++++++++++++++++++++++++++++++++++++++ + ECHO WYBIERZ ŻĄDANĄ AKCJĘ Z SERWEREM: ECHO ====================================== ================= ================================= ===================== ECHO = 11 - Uruchom serwer raz, bez instalacji = ECHO = 12 - Uruchom serwer, jeśli usługi są już zainstalowane = ECHO = 13 - Uruchom ponownie serwer (tylko Apache) = ECHO = 14 - Uruchom ponownie serwer (Apache + MySQL) = ECHO ============== ============== ======================================= ============ ==== ECHO = 21 - Instalacja usług z uruchomieniem serwera = ECHO = 22 - Instalacja samego serwera (bez uruchomienia) = ECHO ============ ========= =========================================== ====== =========== ECHO = 31 - Zatrzymanie serwera = ECHO ======================== ===== ================================================ == == ECHO = 41 - Zatrzymywanie i usuwanie usług serwera = ECHO =================================== = ================================================== ======== ECHO = 51 - Uruchamianie ApacheMonitor .exe = ECHO ================================ ============================= ===================== ============== ECHO = 61 - Sprawdzanie, który program nasłuchuje na porcie 80 = ECHO ==== ================== =================================== =============== ========== ECHO = 71 - Otwórz http://localhost = ECHO = 72 - Otwórz folder ze stronami = ECHO ==== ============== ======================================= ============ ============================ ECHO = 0 - Wyjście = ECHO ================ === =============================================== ====== =========== echo ++++++++++++++++++++++++++++++++ ++++++++ +++++++++++++++++++++++++++ set /p ACTIONLEVEL=Wprowadź numer opcji uruchamiania i naciśnij ENTER : ECHO Operacja nr %ACTIONLEVEL% w toku! Czekaj... JEŚLI "%ACTIONLEVEL%"=="0" (wyjście) JEŻELI "%ACTIONLEVEL%"=="11" (CLS echo WYNIK OPERACJI: echo +++++++++++++ + +++++++++++++++++++++++++++++++++++++++++++++++++ ++++ ECHO ON START /B c:\Server\bin\Apache24\bin\httpd.exe START /B c:\Server\bin\mysql-8.0\bin\mysqld.exe --defaults-file=C: \Server\bin\mysql-8.0\my.ini --standalone --console echo +++++++++++++++++++++++++++++++ ++ +++++++++++++++++++++++++++++++++++ pauza, muszę zacząć) JEŻELI "%ACTIONLEVEL%"==" 12" (CLS echo WYNIK OPERACJI: echo +++++++++++++++++++++++++++++++++++++++ ++++++ +++++++++++++++++++++++++++ ECHO ON c:\Server\bin\Apache24\bin\httpd.exe - k start ECHO Jeśli powyżej nie ma żadnych komunikatów o błędach, oznacza to, że na Apache działa net start mysql echo +++++++++++++++++++++++++++++ +++++++++++++++ +++++++++++++++++++++++++++ pauza, aby rozpocząć) JEŻELI „%ACTIONLEVEL %"=="13" (CLS echo WYNIK OPERACJI: echo ++++++++++++++++++++++++++++++++++ +++++++++++++++++ +++++++++++++++++ ECHO ON c:\Server\bin\Apache24\bin\httpd.exe -k restart ECHO Jeśli nie ma powyższych komunikatów o błędach, oznacza to, że Apache został zrestartowany echo ++ ++++++++++++++++++++++++++++++ +++++++++++++++++++++ +++++++++++++++ pauza, muszę zacząć) JEŻELI "%ACTIONLEVEL%"=="14 " (CLS echo WYNIK OPERACJI: echo ++++++++++++ ++++++++++++++++++++++++++++++ +++++++++++++++++++++ +++++ ECHO ON c:\Server\bin\Apache24\bin\httpd.exe -k restart ECHO Jeśli nie ma komunikaty o błędach powyżej, Apache został zrestartowany net stop mysql net start mysql echo ++++++++ ++++++++++++++++++++++++++ +++++++++++++++++++++++++ +++++++++ pauza, muszę zacząć) JEŻELI "%ACTIONLEVEL%"=="21" ( CLS echo WYNIK OPERACJI: echo ++++++++++++++++++ ++++++++++++++++++++++++++ +++++++++++++++++++++++++ ECHO ON c:\Server\bin\Apache24\bin\httpd.exe -k install c:\Server\bin \Apache24\bin\httpd.exe -k start c:\Server\bin\mysql-8. 0\bin\mysqld --install net start mysql echo ++++++++++++++++++++++++++++++++++++++ ++ +++++++++++++++++++++++++++++ pauza, muszę zacząć) JEŻELI "%ACTIONLEVEL%"=="22" (wynik echa CLS OPERACJA : echo +++++++++++++++++++++++++++++++++++++++++++ +++++ +++++++++++++++++++ ECHO ON c:\Server\bin\Apache24\bin\httpd.exe -k install c:\Server\bin\ mysql-8.0\bin \mysqld --install echo +++++++++++++++++++++++++++++++++++++++ +++++++ +++++++++++++++++++++++ pauza, aby rozpocząć) JEŻELI "%ACTIONLEVEL%"=="31" (wynik echa CLS WYNIK OPERACJA: echo ++++ ++++++++++++++++++++++++++++++++++++++++ +++++++++ +++++++++++++ ECHO ON c:\Server\bin\Apache24\bin\httpd.exe -k stop net stop mysql echo +++++ ++++++++++ ++++++++++++++++++++++++++++++++++++++++ +++++++++++ +++ pauza, muszę zacząć) JEŻELI "%ACTIONLEVEL%"=="41" (CLS echo WYNIK OPERACJI: echo ++++++++++++ ++++++++++ ++++++++++++++++++++++++++++++++++++++++ +++++ ECHO ON c:\Server\ bin\Apache24\bin\httpd.exe -k stop c:\Server\bin\Apache24\bin\httpd.exe -k odinstaluj net stop mysql c:\Server\bin \mysql-8.0\bin\mysqld --usuń echo ++++++++++++++++++++++++++++++++++++++ +++++++++++++ +++++++++++++++++ pauza, aby rozpocząć) JEŻELI "%ACTIONLEVEL%"=="51" (wynik operacji echa CLS : echo ++++++++++ ++++++++++++++++++++++++++++++++++++ +++++++++++++ +++++++ ECHO ON start c:\Server\bin\Apache24\bin\ApacheMonitor.exe echo ApacheMonitor.exe jest uruchomiony!

Zapisz i zamknij plik. Uruchom plik podwójnym kliknięciem. W tym przypadku się pojawi menu tekstowe do zarządzania serwerem WWW:

Włączenie modułów do wyświetlania informacji i stanu serwera

Jeśli chcesz zdalnie monitorować stan serwera (być może za pomocą automatycznych skryptów lub programów), przydatne może okazać się włączenie modułów stan_modu I mod_info.

Gęsiego C:\Serwer\bin\Apache24\conf\httpd.conf znajdź i odkomentuj następujące linie:

LoadModule moduł_statusu moduły/mod_status.so LoadModule moduł_informacyjny moduły/mod_info.so Dołącz conf/extra/httpd-info.conf

Gęsiego C:\Server\bin\Apache24\conf\extra\httpd-info.conf zmień podane linie (lub po prostu je usuń i zastąp sugerowanymi), aby otrzymać:

Status serwera SetHandler Wymagaj hosta localhost Wymagaj adresu IP::1 Informacje o serwerze SetHandler Wymagaj hosta localhost Wymagaj adresu IP::1

Odkomentuj linię:

Stan rozszerzony Włączony

Uruchom ponownie serwer.

Teraz, uzyskując dostęp do adresów http://localhost/server-info i http://localhost/server-status, będziesz mógł monitorować informacje i stan serwera w czasie rzeczywistym.

Serwer WWW Apache to najpopularniejszy sposób udostępniania treści internetowych w Internecie. Stanowi ponad połowę aktywnych stron internetowych w Internecie i jest niezwykle wydajny i szybki.

Apache dzieli swoją funkcjonalność i komponenty na osobne bloki, które można dostosowywać i konfigurować niezależnie od siebie. Podstawowa jednostka opisująca pojedynczą stronę internetową lub domenę nazywana jest hostem wirtualnym.

Takie dystrybucje pozwalają administratorowi, przy użyciu odpowiedniego mechanizmu, używać jednego serwera do hostowania wielu domen lub witryn w ramach jednego interfejsu lub adresu IP. Jest to ważne dla każdego, kto chce hostować wiele stron internetowych na jednym VPS.

Każda skonfigurowana domena przekieruje odwiedzającego do określonego katalogu zawierającego informacje o tej witrynie, nie ujawniając przy tym, że ten sam serwer jest odpowiedzialny za inne witryny. Ten schemat można rozszerzyć bez żadnych ograniczeń programowych, jeśli serwer jest w stanie obsłużyć obciążenie.

W tym samouczku pokażemy, jak skonfigurować wirtualne hosty Apache na Ubuntu 16.10 lub 17.04 VPS. Podczas tego procesu dowiesz się, jak udostępniać różne treści różnym odwiedzającym, w zależności od żądanych domen.

Zakłada się, że pracujesz jako zwykły użytkownik. Jeśli nie, to najpierw utwórz zwykłego użytkownika i zaloguj się pod nim.

Na potrzeby tego samouczka skonfigurujemy hosta wirtualnego dla domeny example.com i innego hosta wirtualnego dla domeny test.com. Będą one wspominane w całym przewodniku, ale należy zastąpić je własnymi domenami lub wartościami.

W przypadku domen rzeczywistych należy zarejestrować rekordy DNS wskazujące adres IP Twojego serwera. Jeśli nie masz domen do zabawy, możesz użyć fałszywych wartości.

Jeśli używasz wartości innych niż rzeczywiste, pokażemy Ci, jak edytować plik hostów lokalnych, aby przetestować konfigurację. Umożliwi to przetestowanie konfiguracji bezpośrednio na komputerze komputer domowy, nawet jeśli Twoje treści nie są dostępne za pośrednictwem nazwy domeny dla innych odwiedzających.

Krok 1 — Tworzenie struktury katalogów

Pierwszym krokiem, który zostanie wykonany, będzie utworzenie struktury katalogów, która będzie zawierać dane witryn, które serwer będzie udostępniał odwiedzającym.

Nasz katalog główny dokumentów (katalog najwyższego poziomu, w którym Apache szuka treści do udostępnienia) zostanie ustawiony na poszczególne katalogi w folderze /var/www. Utworzymy w nim podfoldery dla obu wirtualnych hostów, które planujemy utworzyć.

Wewnątrz każdego z tych katalogów utworzymy folder publiczny_html, który będzie zawierał pliki. Zapewni to większą elastyczność we wdrażaniu złożonych aplikacji internetowych; w folderze publiczny_html zawartość internetowa zostanie zlokalizowana, a folder nadrzędny może zawierać skrypty lub kod aplikacji obsługujący zawartość internetową.

Na przykład dla naszych stron internetowych utworzymy katalogi w następujący sposób:

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

Ponieważ utworzyliśmy katalogi za pomocą sudo, są one własnością użytkownika root. Jeśli chcemy nasze zwykły użytkownik mógł zmienić pliki w naszych katalogach internetowych, możemy zmienić właściciela w następujący sposób:

Sudo chown -R $USER:$USER /var/www/example.com/public_html sudo chown -R $USER:$USER /var/www/test.com/public_html

Po naciśnięciu klawisza Enter zmienna $UŻYTKOWNIK przyjmie wartość użytkownika, jako którego jesteś zalogowany. Robiąc to, nasz zwykły użytkownik stanie się właścicielem podkatalogów publiczny_html gdzie będziemy publikować nasze treści.

Powinniśmy także nieco zmodyfikować nasze uprawnienia, aby upewnić się, że dozwolony jest dostęp do odczytu głównego katalogu internetowego oraz wszystkich zawartych w nim plików i folderów, aby strony mogły poprawnie być obsługiwane przez serwer:

Sudo chmod -R 755 /var/www

Twój serwer internetowy powinien teraz mieć niezbędne uprawnienia do udostępniania treści, a Ty powinieneś móc tworzyć treści w wymaganych folderach.

Krok 2 — Utwórz strony demonstracyjne dla każdego wirtualnego hosta

Struktura katalogów jest na właściwym miejscu. Stwórzmy treść tak, aby serwer WWW mógł ją przetworzyć.

Pokażemy tylko zasadę działania, dzięki czemu nasze strony będą bardzo proste. Po prostu zrobimy stronę indeks.html dla każdej witryny.

Zacznijmy od example.com. Plik indeks.html możemy otworzyć w naszym edytorze wpisując:

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

W tym pliku utwórz dokument HTML stwierdzający, że istnieje połączenie z witryną. Mój plik wygląda mniej więcej tak:

Witamy na przykład.com!

Sukces! Wirtualny host example.com działa!



Po zakończeniu zapisz i zamknij plik.

Możemy skopiować ten plik i wykorzystać go jako podstawę dla naszej drugiej witryny:

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

Następnie możemy otworzyć nowy plik i zmienić go w odpowiednich miejscach:

Vimie /var/www/test.com/public_html/index.html Witamy na Test.com!

Sukces! Wirtualny host test.com działa!



Zapisz także i zamknij ten plik. Teraz masz wymagane strony aby przetestować konfigurację hosta wirtualnego.

Krok 3 — Utwórz nowe pliki konfiguracyjne hosta wirtualnego

Pliki hostów wirtualnych to pliki konfigurujące nasze wirtualne hosty i informujące serwer WWW Apache, jak odpowiadać na żądania z różnych domen.

Apache jest dostarczany ze standardowym plikiem hosta wirtualnego o nazwie 000-default.conf. Możemy wykorzystać to jako punkt wyjścia. Skopiujemy to, aby utworzyć plik wirtualnego hosta dla każdej z naszych domen.

Zaczniemy od jednej domeny, skonfigurujemy ją, zreplikujemy dla naszej drugiej domeny, a następnie dokonamy potrzebnych drobnych poprawek. Standardowa konfiguracja Ubuntu wymaga, aby każdy plik hosta wirtualnego kończył się rozszerzeniem .conf.

Utwórz pierwszy plik hosta wirtualnego

Zacznij od skopiowania pliku dla pierwszej domeny:

Sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/example.com.conf

Otwórz nowy plik w edytor tekstu z uprawnieniami roota:

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

Plik będzie wyglądał mniej więcej tak (usunąłem tutaj komentarze, aby plik był bardziej czytelny):

ServerAdmin webmaster@localhost DocumentRoot /var/www/html Dziennik błędów $(APACHE_LOG_DIR)/error.log Dziennik niestandardowy $(APACHE_LOG_DIR)/access.log łącznie

Jak widać nie ma tu zbyt wiele. Skonfigurujemy elementy dla naszej pierwszej domeny i dodamy kilka dyrektyw. Sekcja Wirtualny Host pasuje do wszystkich żądań wysyłanych na porcie 80, jest to standardowy protokół HTTP.

Najpierw musimy zmienić dyrektywę Administrator serwera, wpisz tutaj swój adres e-mail, na który administrator może otrzymywać pisma.

Administrator serwera [e-mail chroniony]

Następnie musimy dodać dwie dyrektywy. Pierwsza nazywa się ServerName i określa domenę bazową, która musi odpowiadać definicji hosta wirtualnego. Najprawdopodobniej będzie to Twoja domena. Drugi, zwany ServerAlias, definiuje dodatkowe nazwy (aliasy), za pomocą których można uzyskać dostęp do tego wirtualnego hosta. Te. tutaj podajesz różne nazwy hostów wskazujące na jeden wirtualny host, przykładowo, aby witryny z www i bez www były traktowane przez serwer jako jedna witryna, musisz to zrobić:

Nazwa Serwera przykład.com Alias ​​Serwera www.example.com

Musimy także zmienić ścieżkę wskazującą, gdzie znajduje się katalog główny witryny dla tej domeny - DokumentRoot. Stworzyliśmy już potrzebny katalog, więc pozostaje nam tylko zmienić dyrektywę DokumentRoot zgodnie z naszymi warunkami:

DocumentRoot /var/www/example.com/public_html

Ostatecznie nasz plik hosta wirtualnego wygląda następująco:

Administrator serwera [e-mail chroniony] Nazwa serwera przykład.com ServerAlias ​​​​www.example.com DocumentRoot /var/www/example.com/public_html ErrorLog $(APACHE_LOG_DIR)/error.log CustomLog $(APACHE_LOG_DIR)/access.log łącznie

Zapisz i zamknij ten plik.

Skopiuj pierwszy wirtualny host i edytuj go dla drugiej domeny

Teraz, gdy nasz pierwszy plik hosta wirtualnego jest gotowy, możemy utworzyć drugi, kopiując ten plik i dostosowując go w razie potrzeby.

Zacznijmy od kopiowania:

Sudo cp /etc/apache2/sites-available/example.com.conf /etc/apache2/sites-available/test.com.conf

Otwórz w swoim edytorze nowy plik z uprawnieniami roota:

Sudo vim /etc/apache2/sites-available/test.com.conf

Teraz musisz zmienić informacje specyficzne dla drugiej domeny. Po zakończeniu może wyglądać mniej więcej tak:

Administrator serwera [e-mail chroniony] NazwaSerwera test.com ServerAlias ​​​​www.test.com DocumentRoot /var/www/test.com/public_html ErrorLog $(APACHE_LOG_DIR)/error.log CustomLog $(APACHE_LOG_DIR)/access.log łącznie

Gdy wszystko będzie gotowe, zapisz i zamknij plik.

Krok 4 — Włączanie nowych plików hosta wirtualnego

Teraz, gdy utworzyliśmy pliki hosta wirtualnego, musimy je włączyć. Apache ma kilka narzędzi, które nam to umożliwiają.

Możemy użyć narzędzia a2ensite, aby włączyć każdą z naszych witryn w następujący sposób:

Sudo a2ensite example.com.conf sudo a2ensite test.com.conf

Sudo a2dissite 000-default.conf

Kiedy skończysz, będziesz musiał ponownie uruchomić Apache, aby te zmiany zaczęły obowiązywać:

Sudo systemctl uruchom ponownie Apache2

W innej dokumentacji możesz zobaczyć przykład użycia innego polecenia usługi:

Uruchom ponownie usługę Sudo Apache2

To polecenie nadal działa, ale możesz nie widzieć danych wyjściowych normalnie widocznych w innych systemach, ponieważ jest to teraz opakowanie dla systemctl z systemd.

Krok 5 — Konfigurowanie pliku Hosts (opcjonalnie)

Jeśli do tego procesu nie używasz prawdziwych, które należą do ciebie nazwy domen, a jeśli skorzystasz z przykładów podanych w tym artykule, nadal możesz przetestować powodzenie konfiguracji serwera. Można to osiągnąć poprzez tymczasową zmianę pliku zastępy niebieskie na twoim komputer lokalny.

Ta konfiguracja przechwyci wszelkie żądania dotyczące skonfigurowanych domen i wskaże Twój komputer lokalny lub serwer VPS, tak jak to miało miejsce systemu DNS jeśli korzystano z zarejestrowanych domen. Chociaż będzie to działać tylko na komputerze, jest przydatne do celów testowych.

Jeżeli na swoim komputerze lokalnym skonfigurowałeś hosty wirtualne, to na nim również należy dokonać późniejszych zmian. Jeśli konfigurowałeś wirtualne hosty na serwerze VPS, to pamiętaj, aby kolejnych zmian dokonywać nie na nim, a na komputerze, z którego będziesz testował (na swoim komputerze lokalnym). Musisz znać hasło administratora lub być członkiem grupy administracyjnej.

Jeśli korzystasz z komputera Mac lub Linux, edytuj plik lokalny z uprawnieniami administratora:

Sudo gedit /etc/hosts

Załóżmy, że mój VPS ma adres IP 111.111.111.111, a następnie na samym dole pliku hosts muszę dodać dwie linie:

127.0.0.1 localhost ... 111.111.111.111 przykład.com 111.111.111.111 test.com

Jeśli skonfigurowałeś domeny wirtualne na hoście lokalnym, linie mogą wyglądać następująco:

127.0.0.1 przykład.com 127.0.0.1 test.com

Jeśli jesteś włączony Maszyna z Windowsem, otwórz wiersz poleceń z uprawnieniami administratora i wpisz:

Notatnik %windir%\system32\drivers\etc\hosts

Po otwarciu pliku dodaj linie wskazujące publiczny adres IP serwera dla każdej nazwy domeny, jak pokazano w powyższym przykładzie.

Musisz dodać adres IP swojego serwera VPS, a następnie domenę, z którą chcesz się połączyć na VPS.

Spowoduje to przekierowanie wszelkich żądań z Twojego komputera do example.com i test.com i wysłanie ich na Twój serwer 111.111.111.111.

Zapisz i zamknij plik. Teraz możesz przetestować swoje ustawienia. Gdy będziesz pewien, że wszystko działa, usuń te dwie linie z pliku.

Krok 6 – Testowanie wyników

Po skonfigurowaniu hostów wirtualnych możesz łatwo przetestować swoją konfigurację, przechodząc do domeny skonfigurowanej w przeglądarce internetowej. Odwiedź pierwszą witrynę http://example.com, a zobaczysz stronę podobną do poniższej:

Podobnie odwiedź drugą witrynę http://test.com, zobaczysz plik utworzony dla drugiej witryny:

Jeśli obie te witryny działają dobrze, oznacza to, że pomyślnie skonfigurowałeś dwa wirtualne hosty na tym samym serwerze.

Wniosek

Teraz masz pojedynczy serwer z dwiema oddzielnymi domenami. Możesz rozszerzyć ten proces, wykonując poniższe kroki, aby dodać hosty wirtualne.

Nie ma ograniczeń oprogramowania co do liczby nazw domen, które Apache może obsłużyć, więc dodaj ich tyle, ile może obsłużyć Twój serwer.

Domyślnie po zainstalowaniu Apache tworzony jest wirtualny host o nazwie localhost. Powiem ci, jak dodać nowe wirtualne hosty w Apache.

Utworzę wirtualnego hosta o nazwie myhost (zamiast myhost możesz wybrać dowolną nazwę).

Najpierw musisz utworzyć katalog, w którym będą znajdować się pliki przyszłej witryny. Utwórz katalog myhost w swoim katalogu domowym. Aby to zrobić, możesz uruchomić polecenie:

Mkdir ~/myhost

Katalog można utworzyć w dowolnym miejscu, dla uproszczenia utworzyłem go w katalogu głównym mojego katalogu domowego yuriy.

Utwórz plik konfiguracyjny hosta

Katalog /etc/apache2/sites-available przechowuje pliki pliki konfiguracyjne Hosty wirtualne Apache. Domyślnie przechowywany jest tam plik domyślny, który odpowiada hostowi localhost. Weźmiemy plik domyślny jako bazę i skopiujemy go do pliku o nazwie myhost. Aby to zrobić, uruchom następujące polecenia:

CD /etc/apache2/sites-available Sudo cp domyślny myhost

Teraz zmodyfikujmy plik myhost. Otwórz go w edytorze (na przykład edytorze Gedit), uruchamiając polecenie:

Sudo gedit myhost

Wprowadź odpowiednie zmiany w pliku. W szczególności zapisz ścieżkę do katalogu, w którym będą przechowywane pliki hosta. W naszym przypadku jest to ścieżka /home/yuriy/myhost, w której należy zastąpić yuriy nazwą swojego katalogu domowego. Ścieżkę należy podać w dwóch miejscach: przy parametrze DocumentRoot oraz w nagłówku sekcji . Na samym początku pliku (w drugiej linii) pamiętaj o wpisaniu linii „NazwaSerwera mójhost”. Oto przykład tego, jak powinien wyglądać plik myhost:

NazwaSerwera mójhost ServerAdmin webmaster@localhost DocumentRoot /home/yuriy/myhost Opcje FollowSymLinks ZezwólOverride Brak Opcje Indeksy FollowSymLinks MultiViews ZezwalajOverride All Kolejność Zezwól, odmów Zezwalaj wszystkim ErrorLog /var/log/apache2/error.log LogLevel debugowanie CustomLog /var/log/apache2/access.log łącznie

Teraz musimy uaktywnić naszego hosta. Apache używa katalogu /etc/apache2/sites-enabled, aby określić, które hosty włączyć. Utwórzmy dowiązanie symboliczne w katalogu obsługującym witryny, wskazujące na nasz host myhost. Aby to zrobić, uruchom polecenia:

Cd ../sites-enabled Sudo ln -s ../sites-available/myhost myhost

Uruchom ponownie Apache'a

Uruchom ponownie Apache, wydając polecenie:

Sudo /etc/init.d/apache2 uruchom ponownie

Edycja pliku /etc/hosts

Pozostaje tylko edytować plik /etc/hosts. Określa zgodność adresu IP z nazwą hosta. Oznacza to, że jest to rodzaj lokalnego DNS. Aby otworzyć plik, uruchom następujące polecenie:

Sudo gedit /etc/hosts

W pliku po adresie 127.0.0.1 dodaj nazwę swojego wirtualnego hosta. W moim przypadku jest to mójhost.

127.0.0.1 localhost mój host

Wniosek

To kończy konfigurację wirtualnego hosta Apache o nazwie myhost. Możesz teraz uzyskać do niego dostęp w przeglądarce, wpisując http://myhost.

W poprzednim artykule dowiedzieliśmy się, jak zainstalować Apache. Przyjrzyjmy się teraz, dlaczego na Apache tworzony jest host wirtualny i jak skonfigurować wirtualne hosty Apache Windows.

Zastanówmy się więc, dlaczego potrzebujemy wirtualnego hosta. Po instalacje Apache'a możemy uzyskać do niego dostęp, wpisując localhost w przeglądarce. Chciałbym, abyśmy mogli przechowywać kilka witryn na serwerze i uzyskiwać do nich dostęp za pomocą osobnego adresu URL. Aby to zrobić, należy skonfigurować hosty wirtualne na serwerze Apache. Na początek utwórzmy na przykład folder „www.Zametki” na dysku C. W folderze C:\Zametki utworzymy trzy foldery: conf, htdocs, logs, Errors. W folderze conf utworzymy plik zametki.conf. Otwórzmy plik C:\www.Zametki\conf\zametki.conf i opiszmy naszego wirtualnego hosta:

#Virtual Host zametki <VirtualHost *:80> #Ustawienia serwera NazwaSerwera www.zametki ServerAlias ​​zametki ServerAdmin webmaster@zametki #Dzienniki serwera ErrorLog "c:/www.Zametki/logs/error.log" CustomLog "c:/www.Zametki /logs /access.log" wspólny folder #root DocumentRoot "c:/www.Zametki/htdocs" <Directory "c:/www.Zametki/htdocs"> Opcje Indeksy FollowSymLinks ZezwalajOverride All Order deny,allow Zezwalaj ze wszystkich </katalogów> </Wirtualny Host>

Zapisz plik zametki.conf. Teraz wystarczy podłączyć go do głównego pliku konfiguracyjnego serwera httpd.conf. Znajduje się on w C:\Program Files\Apache Software Foundation\Apache2.2\conf. Otwórz go i najpierw dodaj na sam dół pliku:

NazwaVirtualHost *:80 <VirtualHost *:80> Nazwa serwera localhost ServerAdmin admin@localhost </VirtualHost>

Stworzyliśmy domyślny host wirtualny. Teraz podłączmy hosta, który stworzyliśmy. W tym samym pliku piszemy na samym dole dokumentu:

# www.zametki Dołącz „c:/www.Zametki/conf/zametki.conf”

Teraz musimy tylko utworzyć rekord o naszym gospodarzu w plik hosts w C:\WINDOWS\system32\drivers\etc. Będzie to zamiennik serwera DNS.

//wpis domyślny Windows 127.0.0.1 localhost //nasz wpis 127.0.0.1 zametki www.zametki

Tworzenie folderów wirtualnych Apache

Za tworzenie folderów wirtualnych odpowiedzialna jest dyrektywa Alias. Utwórzmy folder do przechowywania plików z błędami Apache. Dodajmy następujący wpis do pliku zametki.conf w dyrektywie <VirtualHost> ... </VirtualHost> naszego wirtualnego hosta:

# Folder z komunikatami o błędach // przypisz alias (alias) do folderu Alias ​​/err/ "c:/www.Zametki/Errors/" <Directory "c:/www.Zametki/Errors/"> Opcje Indeksy FollowSymLinksAllowOverride Wszystkie zamówienia Odmów, zezwól Zezwalaj ze wszystkich </Directory>

Tworzenie własnych stron błędów Apache

Za raportowanie błędów odpowiada dyrektywa ErrorDocument. Utwórzmy plik w folderze c:/www.Zametki/Errors/, na przykład 404.html. To będzie nasza strona HTML wyświetlana w przypadku błędu serwera 404. Dodaj następujące linie do pliku zametki.conf:

# Komunikaty o błędach ErrorDocument 404 /err/404.html



Jeśli zauważysz błąd, zaznacz fragment tekstu i naciśnij Ctrl+Enter
UDZIAŁ: