Virtuální hostitelé Apache2. Cvičte s virtuálními hostiteli

Mějte se hezky, milý čtenáři, u blogu "Programování WEBu od A do Z". Dnes jsme viděli něco málo z webového programování a pojďme si promluvit o nástrojích webového prodejce. Přesněji řečeno, mluvíme o virtualhost for apache2 . Spousta maloobchodníků pracuje a podporuje spoustu projektů. Takže mám například projekt na Joomle, další projekt na WordPressu a také pár testovacích projektů, na kterých pracuji. A tady obviňujeme jídlo: "A jak na jednom stroji spálíte kropení hostitelů?" Pak se pokusím co nejvíce porozumět potravinovému řetězci.
Malý respekt k mému pracovnímu stroji je operační systém Ubuntu, server apache2. Proto jsem nastavil virtualhost za účelem komunikace. Ale rozdíl mezi konfigurací virtuálního hostitele na ubuntu nemá nic společného s konfigurací virtuálního hostitele na Windows nebo je to jiný operační systém. Jedna věc je změnit konfigurační soubory pro virtualhost. A teď začneme...

Chtěl bych upozornit, že již máte nainstalovaný apache2. Ubuntu apache je nainstalován z úložiště. Pro Windows použijte balíčky Denver a XAMPP.
Nyní pojďme pochopit koncepty virtuálního hostitele. Virtualhost je distribuce několika hostitelů na jednom počítači.

Konfigurační soubory apache2 v ubuntu jsou umístěny v /etc/apache2
Soubor apache2.conf je hlavním konfiguračním souborem.
A virtuální hostitelé jsou umístěni v /etc/apache2/sites-available
Pro virtuálního hostitele skinu je v mé složce konfigurační soubor.
Ale ce є relevantní pro ubuntu. Pro ostatní operační systémy nastavte virtualhost v samotném konfiguračním souboru apache2 apache2.conf v samostatném .
Jakýkoli popis virtuálního hostitele začíná na a konec. Tse obov'yazkovo!!!
Virtuální hostitele můžete také svázat s jedinou IP adresou a portem. Bojujte takto:

:> nastavení virtuálního hostitele

nebo svázat jednoho virtuálního hostitele s několika IP adresami:

:> nastavení virtuálního hostitele

Pojďme se vznášet nad zadkem divokého virtuálního hostitele:

ServerAdmin [e-mail chráněný] ServerName kohana ServerAlias ​​​​kohana DocumentRoot /var/www/kohana ScriptAlias ​​​​/cgi-bin/ /usr/lib/cgi-bin/ ErrorLog /var/www/kohana/error.log # Možné hodnoty zahrnují: debug, info, notice, warning, error, crit, # alert, emerg. Varování LogLevel CustomLog /var/www/kohana/access.log kombinovaný Alias ​​​​/doc/ "/usr/share/doc/"

Kožená řada razberemo:

  1. — tato značka znamená, na co měl být virtuální hostitel nastaven. Virtuální hostitel spratsovuvatim při psaní na adresu portu 80.
  2. ServerAdmin - příkaz ke smazání e-mailové adresy správce tohoto hostitele a bude se zobrazovat v upozorněních na prominutí. Naše mysl je [e-mail chráněný]
  3. ServerName – tato direktiva definuje název hostitele a port, který server identifikuje sám. Nezbytné pro vytvoření URL. Máte tedy například hostitele first.example.com a server se také může jmenovat www.example.com a chcete, aby webový server určil vašeho hostitele jako jméno, pak v této direktivě můžete napsat ServerName www .example.com
  4. ServerAlias ​​​​– tato direktiva nastavuje alternativní názvy hostitelů.
  5. DocumentRoot - direktiva nastavuje adresář, kde jsou umístěny soubory pro zpracování apache2. Tobto. Tento katalog ukládá soubory vašeho webu.
  6. pro tuto směrnici můžeme pro katalog předepsat různá pravidla. Směrnice Tsya má na svědomí značku zakrivatisya.. Napíšeme tedy například pravidla pro domovský adresář:
AllowOverride FileInfo

Také na cestě do katalogu se můžeme zastavit a pravidelně kontrolovat.
Nyní se podívejme, jaká pravidla můžeme předepsat v naší směrnici

  • AllowOverride Tento parametr může mít následující hodnoty: None – pokud bude soubor .htaccess zcela ignorován, All – pokud jsou v .htaccess povoleny všechny adresáře.
  • Možnosti – Nastavuje specifika serveru pro tento adresář. Můžete přijmout následující hodnoty: None – stále není povoleno s možnostmi, All – všechny možnosti MultiViews jsou povoleny, ExecCGI – povolit sledování skriptů CGI, FollowSymLinks – server pro sledování symbolických odkazů, Zahrnuje – Server-Site-Includes (SSI) je povoleno , ZahrnujeNOEXEC - SSI je povoleno, ale příkazy skriptu #exec a #include CGI jsou blokovány, Indexy - pokud nebylo v katalogu nic nalezeno, server bude změněn do adresáře, MultiViews - MultiViews je povolen<каталог_1>/<каталог_2>a dokonce i raptom<каталог_2>pokud ne, pak server šeptá dovnitř<каталог_1>soubor<каталог_2>.*), SymLinksIfOwnerMatch - server má pouze ty symbolické odkazy, pro které může mít soubor nebo adresář stejný identifikátor odkazu.
  • Objednávka - pomocí směrnice nastavíme pořadí překontrolování, tobto. zpět k plotu a pokud vše projde s námi, tak je to povoleno
  • Deny - tato direktiva může specifikovat přístup k serveru na základě hostitele nebo IP adresy. Na základě této směrnice jsme znovu ohradili hostitele
  • allow - pro tuto direktivu můžete zadat přístup k serveru, hostiteli je povoleno opětovné povolení.
  1. ErrorLog - pro tuto direktivu můžeme zadat cestu k souboru protokolu.
  2. LogLevel - pro tuto direktivu je možné zvýšit úroveň, která bude zaznamenána do log souboru. Použijte následující rovná se:
  • emerg - nadprimární situace - systém je nevhodný pro vikoristánnya.
  • alert - dіy vinnі buti vzhitі negayno.
  • krit – mysl je kritická.
  • chyba - pardon ospravedlnění.
  • varovat - zálohovat.
  • upozornění - normální omráčení.
  • info - informace.
  • debug - upozornění na ladění
  1. CustomLog - direktiva, kterou je možné do log souboru odhlásit požadavky na server.

Uf, s konfiguračním souborem pro virtualhost jsme to vyřešili.
Nyní vytvoříme virtuální hostitele. Za tímto účelem v Ubuntu ve složce /etc/apache2/sites-available/ vytvoříme soubor s názvem našeho hostitele, například test. І tam umístěte následující kód:

ServerAdmin [e-mail chráněný] ServerName test ServerAlias ​​​​test DocumentRoot /var/www/test Možnosti FollowSymLinks AllowOverride All Možnosti Indexy FollowSymLinks MultiViews AllowOverride All Pořadí povolit, zakázat povolit od všech ScriptAlias ​​​​/cgi-bin/usr/lib/cgi-bin/ AllowOverride None Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch Order povolit,zakázat Povolit od všech ErrorLog /var/www/test/error.log # Možné hodnoty zahrnují: debug, info, notice, warning, error, crit, # alert, emerg. Varování LogLevel CustomLog /var/www/test/access.log kombinovaný Alias ​​​​/doc/ "/usr/share/doc/" Možnosti Indexy MultiViews FollowSymLinks AllowOverride None Order deny

Nyní vytvoříme testovací složku ve složce /var/www/ (zde budou soubory našeho virtuálního hostitele)
Vytvořili jsme konfiguraci pro našeho hostitele. Ztratil jsem svého virtuálního hostitele. Pro který zadáme příkaz:

Test sudo a2ensite

Znovu načtěte samotný apache:

sudo /etc/init.d restartujte apache2

Všechny naše virtuální hostitele fungují.
Do řádku 127.0.0.1 testu přidáme soubor /etc/hosts
Nyní zadáním testu adresy do prohlížeče přejdeme k virtuálnímu hostiteli na našem místním serveru.
Na kterém je nastavení virtuálního hostitele na apache2 dokončeno. Pokud jste obviňovali jídlo, napište do komentářů, jsem na ně obov'yazkovo.
A nezapomeňte sledovat aktualizace na mém blogu, přeplácení

U některých webů pak Apache u kterého je možné nastavit virtuální hostitele (virtuální hostitele). Virtuální hostitelé mají dva typy: virtuální hostitelé založené na jménech pro odkaz na název domény, tj Virtuální hostitelé na bázi IP pro navázání na IP adresu. Virtuální hostitelé prvního typu vyhrají různé názvy pro jednu IP adresu a druhý typ vyhraje jinou IP adresu pro vzhled stránky. Vytvoření virtuálních hostitelů v Apache je nutné, protože na serveru je několik stránek a jejich nastavení je nutné pro správné zobrazení všech stránek.

Nejvíce rozšíříme počet virtuálních hostitelů na základě jmen (virtuálních hostitelů založených na názvech), vázaných na jednu IP adresu. Tímto způsobem můžete uložit anonymní stránky na jednu IP.

Nejjednodušším způsobem přidáním toho, že útok na virtuální hostitele Apache je úprava konfiguračního souboru webového serveru, který lze v operačním systému volat jinak:

Na červená čepice/CentOS/Fedora:

/etc/httpd/conf/httpd.conf

Debian/ubuntu:

/etc/apache2/apache2.conf

Jiným způsobem, bičování є vikoristannya vlashnya .conf soubory, yakі owennі rozmіschuvatsya podle ceny:

Na červená čepice/CentOS/Fedora:

/etc/httpd/conf.d/filename.conf,

Debian/ubuntu:

/etc/apache2/conf.d/filename.conf.

Zpravidla konfigurační soubor httpd.conf nebo apache2.conf distribuoval správu virtuálních hostitelů roztashovuєtsya naprikintsi. Chcete-li přidat virtuálního hostitele, budete muset soubor otevřít a okomentovat jej v novém (čisté # ) směrnice JménoVirtuální hostitel *:80(Argument * znamená "všechny názvy hostitelů"). Existuje způsob, jak umístit konfiguraci conf.d, pak je direktiva přiřazena k tomu, aby nebyla komentována, ale byla přiřazena v nejvíce vytvořeném souboru.

Po NameVirtualHost další blok VirtualHost *:80. Podobné bloky jako konfigurace vašich virtuálních hostitelů. Vše vypadá takto:

JménoVirtuální hostitel *:80 AllowOverride All Options All ServerAdmin [e-mail chráněný] 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 ServerAdmin [e-mail chráněný] DocumentRoot /var/www/site2.ru ServerName site2.ru ServerAlias ​​​​www.site2.ru ErrorLog logs/site2.ru-error_log CustomLog logs/site2.ru-access_log common

Zde vidíte všechna nastavení virtuálních hostitelů, stejně jako připojení nebo zahrnutí možností zpěvu.

Podívejme se blíže na to, co byla směrnice přiřazena ke skinu.

1. Směrnice ServerAdmin Zadejte e-mailovou adresu správce serveru, na kterou potřebujete dostávat upozornění od hostitele jakéhokoli správce.

2. Směrnice DocumentRoot Označuje kořenový adresář se soubory k webu, který může webový server vidět klientovi (prohlížeči).

3. Směrnice název serveru Výběrem názvu hostitele se na požadavku zobrazí soubory seřazené v DocumentRoot.

4. Směrnice ServerAlias slouží jako hostitelský alternativní název hostitele (alias, alias), kde se odpovídá vin.

5. Směrnice ErrorLog nastavit soubory protokolu pardon pro hostitele vzhledu a CustomLog- soubory protokolů pro reshti, krim pardons.

Před zablokováním z virtuálních hostitelů, jak jste si vzpomněli, existuje další záznam:

AllowOverride All

Mít štítky polkaє perelіk směrnice (parametrіv), kakі bude zastosovuvatisya do konkrétního adresáře, yak vkazuєtsya na práci, scho vіdkrivaє. Na zadku více - tse var/www/. Vydána směrnice povolení přepsat Zadejte soubory chi twist .htaccess Pokud ano, pak lze takovéto globální direktivy webového serveru přemapovat v takových souborech. Pro špičatého člověka je to důležitější povolení přepsat vložen do Všechno, který umožňuje zpracování souborů .htaccess a všech zadaných direktiv. Užitečné a další možné významy:

AuthConfig- Umožňuje vlastní autorizační direktivy (AuthDBMGroupFile, AuthDBMUserFile, AuthGroupFile, AuthName, AuthType, AuthUserFile, vyžadovat atd.).

Informace o souboru- Umožňuje přizpůsobení direktiv, které jsou označeny typy dokumentů (AddEncoding, AddLanguage, AddType, DefaultType, ErrorDocument, LanguagePriority atd.).

Indexy— umožňuje hackerské direktivy pro indexování adresářů (AddDescription, AddIcon, AddIconByEncoding, AddIconByType, DefaultIcon, DirectoryIndex, FancyIndexing, HeaderName, IndexIgnore, IndexOptions, ReadmeName atd.).

omezit- Umožňuje editaci direktiv řízení přístupu (povolit, zakázat a objednat).

Možnosti- Umožňuje přizpůsobení direktiv, s jejichž pomocí můžete upravovat specifické vlastnosti adresáře (Options a XBitHack).

Toto je jedna z mnoha možných směrnic, které můžete najít na stránkách prodejců.

Pro uložení změn v souboru je nutné znovu zkontrolovat nové nastavení pardonu. Pro opětovné ověření můžete zkroutit následující příkazy:

apachectl configtest apachectl -S apachectl -d

Yakshcho otrimano podomlennya " Syntaxe OK“, pak neexistují žádné omluvy a můžete znovu načíst webový server, takže změny budou zablokovány. Můžete to udělat za pomoci ofenzivních týmů:

Red Hat/CentOS/Fedora:

restart služby httpd

/etc/init.d/ httpd restart

Debian/Ubuntu:

restart služby apache2

/etc/init.d/apache2 restartujte

Pak se můžete s nadcházejícím problémem postarat. Když potřebujete, aby Apache prošel celý seznam virtuálních hostitelů při hledání jiného, ​​a i když neznáte identitu, uvidíte prvního hostitele v pořadí. Aby se fakhivtsy zbavil této nepřijatelnosti, uhodl takzvaný útržek, jako by vložil řádek před první oddíl. virtuální hostitel skutečné místo. Vypadá takto:

Výchozí název_serveru DocumentRoot /var/www/default

V této hodnosti bude mimochodem přemoženo veškeré špatné pití var/www/default, de můžete vytvořit indexovou stránku jako připomínku nesprávného požadavku.

Apache tedy nemůže pro zamykání přistupovat k vašim domovským adresářům, ale pouze k adresáři /var/www. Pokud hackujete svůj server SElinux, pak pro udělení přístupu Apache do vašich domovských adresářů tweetujte následující příkazy:

Setsebool -P httpd_enable_homedirs 1

Setsebool -P apache2_enable_homedirs 1

Aby měl Apache mav přístup například do adresáře sing /home/mydir další win příkaz:

Chcon -R -t httpd_sys_content_t /home/mydir

Chcon -R -t apache2_sys_content_t /home/mydir

S pomocí SELinux Pro přístup Apache do domovského adresáře vašeho webu budete muset ručně upravit konfigurační soubor ( /etc/httpd/conf/httpd.conf PROTI CentOS/Fedora nebo /etc/apache2/apache2.conf PROTI Debian/Ubuntu).

Zadejte konfigurační soubor webového serveru pro editaci, najděte řádek DocumentRoot(pomocí editoru nano її poznáte pomocí kombinace kláves ctrl+w). Nahraďte hodnotu v tlapkách /var/www/html na absolutní cestě k domovskému adresáři webu (např. /home/username/site.com). Uložte úpravy a prohlédněte si je z nabídky editoru ( Ctrl+Oі Ctrl+X). Restartujte Apache.

Jak máte nainstalovaný OS na vašem VPS Debian/Ubuntu a poté řádek upravte DocumentRoot požadovaný pro soubor /etc/apache2/sites-available/default. Chcete-li upravit a nahradit standardní hodnotu, zadejte yogo /var/www na absolutní cestě k domovskému adresáři webu. Restartujte webový server.

Na tomto základě je instalace virtuálních hostitelů dokončena.

U některých webů pak Apache u kterého je možné nastavit virtuální hostitele (virtuální hostitele). Virtuální hostitelé mají dva typy: virtuální hostitelé založené na jménech pro odkaz na název domény, tj Virtuální hostitelé na bázi IP pro navázání na IP adresu. Virtuální hostitelé prvního typu vyhrají různé názvy pro jednu IP adresu a druhý typ vyhraje jinou IP adresu pro vzhled stránky. Vytvoření virtuálních hostitelů v Apache je nutné, protože na serveru je několik stránek a jejich nastavení je nutné pro správné zobrazení všech stránek.

Nejvíce rozšíříme počet virtuálních hostitelů na základě jmen (virtuálních hostitelů založených na názvech), vázaných na jednu IP adresu. Tímto způsobem můžete uložit anonymní stránky na jednu IP.

Nejjednodušším způsobem přidáním toho, že útok na virtuální hostitele Apache je úprava konfiguračního souboru webového serveru, který lze v operačním systému volat jinak:

Na červená čepice/CentOS/Fedora:

/etc/httpd/conf/httpd.conf

Debian/ubuntu:

/etc/apache2/apache2.conf

Jiným způsobem, bičování є vikoristannya vlashnya .conf soubory, yakі owennі rozmіschuvatsya podle ceny:

Na červená čepice/CentOS/Fedora:

/etc/httpd/conf.d/filename.conf,

Debian/ubuntu:

/etc/apache2/conf.d/filename.conf.

Zpravidla konfigurační soubor httpd.conf nebo apache2.conf distribuoval správu virtuálních hostitelů roztashovuєtsya naprikintsi. Chcete-li přidat virtuálního hostitele, budete muset soubor otevřít a okomentovat jej v novém (čisté # ) směrnice JménoVirtuální hostitel *:80(Argument * znamená "všechny názvy hostitelů"). Existuje způsob, jak umístit konfiguraci conf.d, pak je direktiva přiřazena k tomu, aby nebyla komentována, ale byla přiřazena v nejvíce vytvořeném souboru.

Po NameVirtualHost další blok VirtualHost *:80. Podobné bloky jako konfigurace vašich virtuálních hostitelů. Vše vypadá takto:

JménoVirtuální hostitel *:80 AllowOverride All Options All ServerAdmin [e-mail chráněný] 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 ServerAdmin [e-mail chráněný] DocumentRoot /var/www/site2.ru ServerName site2.ru ServerAlias ​​​​www.site2.ru ErrorLog logs/site2.ru-error_log CustomLog logs/site2.ru-access_log common

Zde vidíte všechna nastavení virtuálních hostitelů, stejně jako připojení nebo zahrnutí možností zpěvu.

Podívejme se blíže na to, co byla směrnice přiřazena ke skinu.

1. Směrnice ServerAdmin Zadejte e-mailovou adresu správce serveru, na kterou potřebujete dostávat upozornění od hostitele jakéhokoli správce.

2. Směrnice DocumentRoot Označuje kořenový adresář se soubory k webu, který může webový server vidět klientovi (prohlížeči).

3. Směrnice název serveru Výběrem názvu hostitele se na požadavku zobrazí soubory seřazené v DocumentRoot.

4. Směrnice ServerAlias slouží jako hostitelský alternativní název hostitele (alias, alias), kde se odpovídá vin.

5. Směrnice ErrorLog nastavit soubory protokolu pardon pro hostitele vzhledu a CustomLog- soubory protokolů pro reshti, krim pardons.

Před zablokováním z virtuálních hostitelů, jak jste si vzpomněli, existuje další záznam:

AllowOverride All

Mít štítky polkaє perelіk směrnice (parametrіv), kakі bude zastosovuvatisya do konkrétního adresáře, yak vkazuєtsya na práci, scho vіdkrivaє. Na zadku více - tse var/www/. Vydána směrnice povolení přepsat Zadejte soubory chi twist .htaccess Pokud ano, pak lze takovéto globální direktivy webového serveru přemapovat v takových souborech. Pro špičatého člověka je to důležitější povolení přepsat vložen do Všechno, který umožňuje zpracování souborů .htaccess a všech zadaných direktiv. Užitečné a další možné významy:

AuthConfig- Umožňuje vlastní autorizační direktivy (AuthDBMGroupFile, AuthDBMUserFile, AuthGroupFile, AuthName, AuthType, AuthUserFile, vyžadovat atd.).

Informace o souboru- Umožňuje přizpůsobení direktiv, které jsou označeny typy dokumentů (AddEncoding, AddLanguage, AddType, DefaultType, ErrorDocument, LanguagePriority atd.).

Indexy— umožňuje hackerské direktivy pro indexování adresářů (AddDescription, AddIcon, AddIconByEncoding, AddIconByType, DefaultIcon, DirectoryIndex, FancyIndexing, HeaderName, IndexIgnore, IndexOptions, ReadmeName atd.).

omezit- Umožňuje editaci direktiv řízení přístupu (povolit, zakázat a objednat).

Možnosti- Umožňuje přizpůsobení direktiv, s jejichž pomocí můžete upravovat specifické vlastnosti adresáře (Options a XBitHack).

Toto je jedna z mnoha možných směrnic, které můžete najít na stránkách prodejců.

Pro uložení změn v souboru je nutné znovu zkontrolovat nové nastavení pardonu. Pro opětovné ověření můžete zkroutit následující příkazy:

apachectl configtest apachectl -S apachectl -d

Yakshcho otrimano podomlennya " Syntaxe OK“, pak neexistují žádné omluvy a můžete znovu načíst webový server, takže změny budou zablokovány. Můžete to udělat za pomoci ofenzivních týmů:

Red Hat/CentOS/Fedora:

restart služby httpd

/etc/init.d/ httpd restart

Debian/Ubuntu:

restart služby apache2

/etc/init.d/apache2 restartujte

Pak se můžete s nadcházejícím problémem postarat. Když potřebujete, aby Apache prošel celý seznam virtuálních hostitelů při hledání jiného, ​​a i když neznáte identitu, uvidíte prvního hostitele v pořadí. Aby se fakhivtsy zbavil této nepřijatelnosti, uhodl takzvaný útržek, jako by vložil řádek před první oddíl. virtuální hostitel skutečné místo. Vypadá takto:

Výchozí název_serveru DocumentRoot /var/www/default

V této hodnosti bude mimochodem přemoženo veškeré špatné pití var/www/default, de můžete vytvořit indexovou stránku jako připomínku nesprávného požadavku.

Apache tedy nemůže pro zamykání přistupovat k vašim domovským adresářům, ale pouze k adresáři /var/www. Pokud hackujete svůj server SElinux, pak pro udělení přístupu Apache do vašich domovských adresářů tweetujte následující příkazy:

Setsebool -P httpd_enable_homedirs 1

Setsebool -P apache2_enable_homedirs 1

Aby měl Apache mav přístup například do adresáře sing /home/mydir další win příkaz:

Chcon -R -t httpd_sys_content_t /home/mydir

Chcon -R -t apache2_sys_content_t /home/mydir

S pomocí SELinux Pro přístup Apache do domovského adresáře vašeho webu budete muset ručně upravit konfigurační soubor ( /etc/httpd/conf/httpd.conf PROTI CentOS/Fedora nebo /etc/apache2/apache2.conf PROTI Debian/Ubuntu).

Zadejte konfigurační soubor webového serveru pro editaci, najděte řádek DocumentRoot(pomocí editoru nano її poznáte pomocí kombinace kláves ctrl+w). Nahraďte hodnotu v tlapkách /var/www/html na absolutní cestě k domovskému adresáři webu (např. /home/username/site.com). Uložte úpravy a prohlédněte si je z nabídky editoru ( Ctrl+Oі Ctrl+X). Restartujte Apache.

Jak máte nainstalovaný OS na vašem VPS Debian/Ubuntu a poté řádek upravte DocumentRoot požadovaný pro soubor /etc/apache2/sites-available/default. Chcete-li upravit a nahradit standardní hodnotu, zadejte yogo /var/www na absolutní cestě k domovskému adresáři webu. Restartujte webový server.

Na tomto základě je instalace virtuálních hostitelů dokončena.

Na tsіy zamittsі mova pіde pro nastavení virtuálních hostitelů Apache pod Windows. Řeknu vám, jaké jsou virtuální hostitelé a proč ten smrad vikoristovuyutsya. Jsou přidány podrobné ilustrace.

Virtuální hosting. Základní porozumění.

Opět je nutné pochopit, jaký je virtuální hosting:

virtuální hostitelIng- tato technologie, s jejíž pomocí může webový server získat na jednom počítači několik doménových jmen.

Tobto. můžete mít v počítači několik stránek, které jsou dostupné pod různými názvy.

Virtuální hostitelé jsou 2 typy:

  • virtuální hostitelé na základě jmen ( na základě jména);
  • virtuální hostitelé na základě IP adresy počítače ( založené na ip).

Vyhrajeme první možnost – jmenovitě založené virtuální hostitele.

Nastavení virtuálních hostitelů Apache.

Pro nastavení virtuálních hostitelů jsme zodpovědní za přidání několika řádků textu do konfiguračního souboru Apache. O těch, kteří soubor znají, a o popisu jeho syntaxe si můžete přečíst v poznámce o konfiguraci PHP jako modulu Apache.

Otevřete soubor v poznámkovém bloku. Shukaєmo a můžete vidět komentář na zadní straně řádku, jak je znázorněno níže:

# Virtuální hostitelé
Zahrnout conf/extra/httpd-vhosts.conf

Tento řádek spojuje parametry popsané v souboru conf/extra/httpd-vhosts.conf.

Syntaxe pro skládání virtuální hostitel založený na názvu:


Cesta DocumentRoot k webu
ServerName název webu

Soubor vhosts má přílohy. Nepotřebujeme smrad. Prostě to vidíme a nahrazujeme útočný test:

#
# Virtuální hostitelé
#
# Zde si můžete přečíst více o jemném ladění virtuálních hostitelů
#
#

#
# Používejte virtuální hosting založený na názvu.
#
JménoVirtuální hostitel *:80

# Zde můžete napsat cestu k souborům webu (DocumentRoot) a název hostitele (ServerName)

DocumentRoot na: /www/test
Test názvu serveru

Nyní vytvořte složku na disku C: www i do nové složky test. Věnujte pozornost skutečnosti, že systém Windows má zpětná lomítka a konfigurační soubor má /.

Nyní je nutné znovu využít Apache, aby se zlepšilo rytířství.

Pojďme do toho a řekněme Windows o vytváření virtuálních hostitelů. Pro koho znát soubor C:/Windows/system32/drivers/etc/hosts. Vіdkrivaєmo yogo za pomoc skvělého poznámkového bloku a přidejte tam postupující řádek:

127.0.0.1 je IP adresa vašeho počítače. V řadě jsme Windows řekli, že web je umístěn na této IP adrese test.

Pokud vytvoříte například ještě jednoho virtuálního hostitele, můžete přidat další řádek:

127.0.0.1 název vašeho virtuálního hostitele

Nyní je třeba přehodnotit, co je správně nastaveno. Pro koho tvoříme s tatínkem c:/www/test soubor index.php a napište tam následující kód:

Píšeme na adresu URL prohlížeče http://test. Pokud jste udělali vše správně, zazpívejte to kshtalt:

Pokud jste někoho nezasáhli, pak do toho nespadnete - píšeme v komentářích. Společně dokážeme vyřešit jakýkoli problém 😉

V úvodním článku jsme zjistili, jak nainstalovat apache. Nyní se podíváme na to, jak vytvořit virtuální hostitele na Apache a jak nakonfigurovat virtuální hostitele Apache Windows.

Pojďme tedy zjistit, co potřebujeme pro virtuálního hostitele. Jakmile je apache nainstalován, můžeme jej znovu spustit zadáním localhost do prohlížeče. A chtěl bych, abychom mohli zkusit na serveru pár stránek a dostat se na ně po správné url. Pro které lze zrobleno na Apache vytváření virtuálních hostitelů. Pro klas vytvoříme pažbu ve složce disku C „www.Zametki“. Složka C: Zametki má tři složky conf, htdocs, logs, Errors. Ve složce conf vytvoříme soubor zametki.conf. Otevřete soubor С:\www.Zametki\conf\zametki.conf a popište našeho virtuálního hostitele:

#VirtualHost zametki <VirtualHost *:80> #Configuring server ServerName www.zametki ServerAlias ​​​​zametki ServerAdmin [e-mail chráněný]#Protokoly serveru ErrorLog "c:/www.Zametki/logs/error.log" CustomLog "c:/www.Zametki/logs/access.log" common #DocumentRoot "c:/www.Zametki/htdocs" <Directory " w: /www.Zametki/htdocs"> Možnosti Indexy FollowSymLinks AllowOverride All Order odepřít, povolit Povolit ze všech </Directory> </VirtualHost>

Vezměte soubor noteki.conf. Nyní jsme ztratili spojení s hlavním konfiguračním souborem serveru httpd.conf. Vin umístěný na C:\Program Files\Apache Software Foundation\Apache2.2\conf. Vidkrivaєmo jóga a pro klas přidejte úplně na konec souboru:

NameVirtualHost *:80 <VirtualHost *:80> ServerName localhost ServerAdmin [e-mail chráněný]</VirtualHost>

Vytvořili jsme virtuálního hostitele pro propagační akce. Nyní můžeme propojit výtvory našeho hostitele. Do stejného souboru napíšeme úplně dole v dokumentu:

# www.zametki Zahrnout "c:/www.zametki/conf/zametki.conf"

Nyní již nemusíme vytvářet záznam o našem hostiteli v souboru hosts na adrese C: WINDOWSsystem32driversetc. Nahradíte server DNS.

//windows lock záznam 127.0.0.1 localhost //náš záznam 127.0.0.1 zametki www.zametki

Vytvoření virtuální složky Apache

Pro vytvoření virtuální technologie máme aliasovou směrnici. Vytvořme složku pro ukládání souborů s Apache pardons. Přidáno do souboru zametki.conf a direktivy <VirtualHost> ... </VirtualHost> našeho virtuálního hostitele dále:

# Složka s připomenutím o omilostnění //přiřadit alias (alias) pro složku Alias ​​​​/err/ "c:/www.Zametki/Errors/" <Directory "c:/www.Zametki/Errors/"> Možnosti Indexy FollowSymLinks AllowOverride All Order odepřít, povolit Povolit ze všech </Directory>

Vytváření vlastních stránek s Apache pardons

Pro informace o milostech zašlete směrnici ErrorDocument. Vytvoříme ve složce c:/www.Notes/Errors/ soubor například 404.html. Toto bude naše html stránka, která se zobrazí po vymazání serveru 404. Do souboru zametki.conf přidáme další řádky:

# Upozornění ErrorDocument 404 /err/404.html

Podobné články