This page is hosted for free by zzz.com.ua, if you are owner of this page, you can remove this message and gain access to many additional features by upgrading your hosting to PRO or VIP for just 41.60 UAH.
Do you want to support owner of this site? Click here and donate to his account some amount, he will be able to use it to pay for any of our services, including removing this ad.
Создание, продвижение и поддержка сайтов
Online Translate
Рубрики

Интернет реклама УБС
Статистика сайта
Посетители по странам
Посетители за последние 24 часа
Flag Counter

Интернет реклама УБС

Виртуальный хостинг

Разберем по этапам понятие «виртуальный хостинг» и технологию его создания (настройки). Он представляет собой методику хранения содержимого Web-сайтов с разными именами доменов или хостов на одном сервере. Например, именам www.mystore.com и www.frankspage.com в DNS может соответствовать один и тот же IP-адрес, и Apache обслуживает оба этих сайта (равно как и собственное имя хоста, которое задано директивой ServerName). Какое программное обеспечение нужно для виртуального хостинга? Для обслуживания всех запросов достаточно одного Apache, что упрощает администрирование и позволяет экономить IP адреса. Однако увеличивается вред при взломе, потому что взломщик получает доступ ко всем сайтам.

Протокол НТТР/1.0 не указывает имя хоста. Поэтому ранее виртуальный хостинг был возможен лишь в том случае, когда каждому имени хоста был поставлен в соответствие отдельный IP-адрес (с последующим созданием IP-псевдонимов, указывающих на одну и ту же Ethernet-карту). Каждый виртуальный хост определялся по IP-адресу, и запрос, приходящий от Web-браузера, всегда получал в ответ страницу соответствующего Web-сайта. Недостатком такого подхода было то, что привязка больших блоков IP-адресов к одной и той же карте становилась громоздкой и приводила и к излишнему потреблению адресного IP-пространства.

С появлением версии протокола НТТР/1.1 данный процесс значительно упростился. Обязательный заголовок Host: указывает искомое имя хоста, поэтому виртуальные хосты, различаемые по имени, стали нормой в современном Internet. Клиенты, не поддерживающие заголовка Host: теперь чрезвычайно редки. Далее обсуждается исключительно новый вариант виртуального хостинга. Если вы заинтересованы в использовании виртуального хостинга на базе IP-адресов, обратитесь к документации, имеющейся на Web-сайте Apache.

Большая часть файла httpd.conf определяет сервер по умолчанию — глобальный набор определений, применяющихся ко всем запросам, получаемым сервером Apache. В сервере по умолчанию директива ServerName используется в первую очередь для конструирования URL-перенаправления с кодом 301. Можно также воспользоваться небольшим набором директив, отменяющим глобальные настройки в том случае, когда заголовок Host: совпадает с определенным именем хоста. Такие наборы правил и представляют собой виртуальные хосты.

Предположим, что сервер называется stripes.somewhere.com. Его имя задано в главной директиве ServerName. Для настройки виртуального хостинга по именам следует воспользоваться директивой NameVirtualHost с аргументом * (этот символ-заместитель означает «все хосты»), за которой следует необходимое число различных блоков :

NameVirtualHost *

ServerName www.somewhere.com
DocumentRoot /usr/local/www/data
ServerAdmin webmaster@somewhere.com
ErrorLog logs/www.somewhere.com-error_log
CustomLog logs/www.somewhere.com-access_log common

ServerName www.frankspage.com
ServerAlias frankspage.com
DocumentRoot /home/frank/public_html
ServerAdmin frank@frankspage.com
ErrorLog logs/www.frankspage.com-error_log
CustomLog logs/www.frankspage.com-access_log common

Внутри контейнера директива ServerName определяет имя хоста. Директива DocumentRoot указывает, где находится корневой каталог файловой системы для приходящего запроса, a ErrorLog и CustomLog — альтернативные log файлы для каждого виртуального хоста. ServerAlias позволяет перечислить псевдонимы виртуального хоста. В блоке можно включить и любые другие директивы.

Важно отметить, что при настройках, приведенных ранее, запрос к серверу по умолчанию (stripes.somewhere.com) или к любому другому имени хоста, соответствующему IP-адресу сервера, но не совпадающему ни с одним из блоков , обработан не будет.

Вот пример более корректной конфигурации:

NameVirtualHost *

ServerName stripes.somewhere.com

ServerName www.somewhere.com
ServerAlias *.somewhere.com
DocumentRoot /usr/local/www/data
ServerAdmin webmaster@somewhere.com
ErrorLog logs/www.somewhere.com-error_log
CustomLog logs/www.somewhere.com-access_log common

ServerName www.frankspage.com
ServerAlias frankspage.com
DocumentRoot /home/frank/public_html
ServerAdmin frank@ frankspage.com
ErrorLog logs/www.frankspage.com-error_log
CustomLog logs/www.frankspage.com-access_log common

Виртуальные хосты можно создавать множеством способов: указывая различные IP-адреса и порты в блоках . Синтаксис таких методов можно уточнить по адресу http://httpd.apache.org/docs/vhosts/.


Интернет реклама УБС

Интернет реклама УБС