Создание динамических поддоменов через Windows / IIS

Россия+7 (495) 960-65-87
Шрифт:
0 6233

Довольно часто приходится сталкиваться с проблемой, когда информации на сайте, размещенном на Windows Server, становится настолько много, что приходится пересмотреть свои взгляды на архитектуру сайта. В этих случаях сайт можно разбить на поддомены. В статье представлены два способа, как этого добиться с небольшим их анализом со стороны автора.

Приступая к реализации этих методов, необходимо получить следующие доступы и возможности пользоваться технологиями:

  • должна быть возможность изменения DNS;
  • доступ к серверу ISS;
  • ISAPI_Rewrite (для реализации 2 способа).

Реализация первого метода: настройка сервера IIS

Вероятно, у вас будет ограниченное количество поддоменов, которыми необходимо будет управлять. Управлять им можно будет как всеми вместе, так и каждым по отдельности.

Управление группой поддоменов: добавьте следующую запись в ваш DNS и измените домен вместе с IP следующим образом:

*.example.com IN A 1.2.3.4

Объявление вручную: добавьте запись для каждого из поддоменов.

В sub1.example.com 1.2.3.4
В sub2.example.com 1.2.3.4
В sub3.example.com 1.2.3.4

Настройка веб-сервера

Во-первых, убедитесь, что вы создали корень директории для каждого из поддоменов, как при работе с новым сайтом. Ваша директория может выглядеть следующим образом:

d:\inetpub\wwwroot\example.com\sub1\
d:\inetpub\wwwroot\example.com\sub2\
d:\inetpub\wwwroot\example.com\sub3\
d:\inetpub\wwwroot\example.com\js\
d:\inetpub\wwwroot\example.com\css\
d:\inetpub\wwwroot\example.com\img\

Далее необходимо создать сайт для каждого из поддоменов. Следующие действия можно повторять для вех поддоменов:
  • Откройте консоль IIS (IIS Management Console);
  • Щелкните на Web Sites и выберите New: Web-site;
  • Нажмите Next, чтобы продолжить;
  • Введите описание сайта и нажмите кнопку Next. Пример того, как это выглядит: sub1.example.com;
  • IP-адрес и Settings: введите sub1.example.com в Host header.
  • На следующей странице введите путь d:\inetpub\wwwroot\example.com\sub1\
  • На следующей странице, выберите подходящие настройки и нажмите кнопку Next.

Дело сделано.

Теперь начинается самое интересное: созданы отдельные сайты для каждого поддомена, но у них есть общие файлы (скрипты, CSS, картинки). Проблема состоит в том, как сделать так, чтобы каждому сайту были доступны эти файлы.
  • Кликните правой кнопкой мыши на поддомен, который вы только что создали в консоль управления IIS и выберите New : Virtual Directory;
  • В качестве примера будем использовать папку CSS. Кликните на Next и введите в css псевдонимом;
  • Укажите путь d : \ inetpub \ wwwroot \ example.com \ css \ и нажмите кнопку Next.

Реализация первого метода: подведение итогов

Итак, мы создали несколько поддоменов и разделили между ними общие файлы.

Реализация первого метода: использование ISAPI_Rewrite

Сразу перейдем к сравнению первого метода со вторым.

Настройка DNS

Добавьте следующую запись в ваш DNS и измените домен вместе с IP следующим образом:

*.example.com IN A 1.2.3.4

Настройка веб-сервера

  • Откройте консоль управления IIS выберите Web-site;
  • Щелкните правой кнопкой мыши по нему и выберите Properties;
  • Нажмите кнопку Advanced;
  • Убедитесь, что имеется одна запись для множества сущностей для данного веб-сайта с заполненным Host Header Name. Данная запись будет перехватывать все запросы, которые адресуются IP-адрес;
  • Убедитесь, что IP-адрес используется только этим сайтом

Настройка httpd.ini по ISAPI_Rewrite

Добавьте следующий код в httpd.ini в корне директории. Убедитесь, что они в правильном порядке.

# Конвертировать http://example.com к http://www.example.com/
RewriteCond Host: ^example.com
RewriteRule (.*) http\://www\.example.com$1 [I,RP]

# ограничимся рядом общих папок.
# будем выполнять их соответственно вне зависимости от поддомена.
# Example: http://sub1.example.com/img/logo.jpg -> /img/logo.jpg
# Example: http://www.example.com/img/logo.jpg -> /img/logo.jpg
RewriteRule (/css/.*) $1 [I,O,L]
RewriteRule (/js/.*) $1 [I,O,L]
RewriteRule (/img/.*) $1 [I,O,L]

# Перенаправлять все остальные подкаталоги, не соответствующие
# вышеупомянутому списку, как поддомены.
#example: www.example.com\sub1 -> sub1.example.com
RewriteCond Host: www\.highspeed\.com
RewriteRule /(\w*)/(.*) http\://$1\.example\.com$2 [I,RP]

# Если веб-сайт начинается с www, то обязательно укажите файл в корневой папке.
# Если вы специально создали папки / www /, то вы можете закомментировать этот раздел.
RewriteCond Host: (?:www\.)example.com
RewriteRule (.*) $1 [I,O,L]

# url сайта, начинающийся без www, будет переправлен на поддомен
# Example: http://sub1.example.com/default.asp -> /sub1/default.asp
# Note: if the folder does not exists, then the user will get a 404 error automatically.
RewriteCond Host: (.*)\.example.com
RewriteRule (.*) /$1$2 [I,O,L]

# исправление недостающего символа
# выдача 404 ошибки
RewriteCond Host: (.*)
RewriteRule ([^.?]+[^.?/]) http\://$1$2/ [I,RP]

Тестирование поддоменов

Предположим, что корпоративный сайт состоит из двух поддоменов sub1, sub2.

URI ¦ Расположение на сервере

http://www.example.com ¦ /
http://sub1.example.com/img/logo.jpg ¦ /img/logo.jpg
http://sub2.example.com ¦ /sub2/
http://abc.example.com ¦ /abc/ -> 404 Not Found

Реализация второго метода: подведение итогов

Второе решение легкое в реализации, однако нужно быть осторожным в создании директорий. Так, например, пользователь не может создавать папки d:\inetpub\wwwroot\example.com\sub1\img\ потому, что она противоречит ISAPI_Rewrite (/ img / *.). Поэтому файлы в этой папке не будут доступны.

Сравнения

Multiple IIS- плюсы

  • Вся информация из всех папок доступна, противоречий нет.
  • Отделены log-файлы для отслеживания их по отдельности.
  • Может быть осуществлена настройка для группы серверов и произведена балансировка нагрузки на них.

Multiple IIS сеть - минусы

  • Необходимость создания нового сайта на поддомене.
  • Требует доступа к серверу IIS.

ISAPI_Rewrite - плюсы

  • Простота установки.
  • Легкость просмотра log-файлов.
  • Для добавления поддомена просто необходимо добавить новую папку

ISAPI_Rewrite - минусы

  • Необходимость отслеживания каталогов во избежание конфликтов.
  • Нужна выделять IP-адрес.
  • Требуется дополнительный ресурс для обработки каждого файла.
  • Необходимость подбора сервера, который поддерживает ISAPI_Rewrite.

Заключение

Хотя ISAPI_Rewrite гораздо проще в реализации, все-таки, использовать его рекомендуется на не очень больших сайтах, с которыми работает группа разработчиков. Это объясняется тем, что группа разработчиков должна постоянно отслеживать добавление и удаление ресурсов. Для большого сайта администратор должен будет произвести все настройки на нескольких серверах только один раз. Поддомены, созданные различными командами разработчиков, в этом случае будут функционировать практически одинаково с одинаковыми настройками.

В конце концов, выбор способа разделения сайта на поддомены зависит от администратора, который обслуживает сайт.

Перевод Сергея Стружкова

Читайте нас в Telegram - digital_bar

Случилось что-то важное? Поделитесь новостью с редакцией.


Новые 
Новые
Лучшие
Старые
Сообщество
Подписаться 
Подписаться на дискуссию:
E-mail:
ОК
Вы подписаны на комментарии
Ошибка. Пожалуйста, попробуйте ещё раз.
Отправить отзыв
    ПОПУЛЯРНЫЕ ОБСУЖДЕНИЯ НА SEONEWS
    32 инструмента в помощь SEO-специалисту
    Игорь
    1
    комментарий
    0
    читателей
    Полный профиль
    Игорь - отличная подборка, сам многим из этих сервисов пользуюсь (ETXT, TEXT.RU, Адаптивность, Pingdom Website Speed Test, Google PageSpeed Tools, 2IP, Whois, Букварикс) Правда не мог найти достойного кластеризатора, но потом наткнулся на вот этот seoquick.com.ua/keyword-grouping/ не сочтите за рекламу:) Было бы интересно услышать ваше мнение о нем. Мне очень даже зашел, из-за скорости работы. Как говорит автор - 100 000 запросов за несколько минут. Я с такими цифрами правда не работал, обычно это до 30 000 точно, но работает очень быстро и в правду. Ну и бесплатно, думаю, это был еще один решающий фактор для меня
    Исследование: влияние smart-ссылок на продвижение по СЧ-запросам
    Анатолий Шевчик
    1
    комментарий
    0
    читателей
    Полный профиль
    Анатолий Шевчик - +1097988
    SEO глазами клиентов 2018
    Анна Макарова
    331
    комментарий
    0
    читателей
    Полный профиль
    Анна Макарова - Нет, мы не собирали такую информацию.
    Не очень удачный кейс продвижения сайта по услуге «Трезвый водитель» в Москве
    Александр Селенков
    1
    комментарий
    0
    читателей
    Полный профиль
    Александр Селенков - Работа проделана огромная. Интересный кейс, все детально и понятно изложено.
    Два идеальных способа разориться на старте интернет-магазина
    Стас
    4
    комментария
    0
    читателей
    Полный профиль
    Стас - Seonews в последнее время такую чушь несет! Где вы таких афторов находите? Статья ничего не стоит и несет чушь! Кто хоть немного понимает в этом так вам и скажет, и такие де комментаторы горе-сеошники, просто смешно читать, вы хоть модерируете ваши статьи или просто для воды на сайте?! Бред сивой кобылы эта статья до самой последней точки!!!
    Яндекс перестал индексировать сайты, созданные на Wix
    Константин Даткунас
    3
    комментария
    0
    читателей
    Полный профиль
    Константин Даткунас - Было бы интересно посмотреть саму выборку из 10 000 и методику анализа.
    4 способа быстро собрать теги для сайта
    Рустем Низамутинов
    5
    комментариев
    0
    читателей
    Полный профиль
    Рустем Низамутинов - Расписал и закинул в Google Docs, а то здесь в комментариях ссылки на активны. docs.google.com/document/d/1r0TZLNrQyYLdIzDQsD5YKlMG41HUGQgEep3bxE_ij-M/edit?usp=sharing
    Как мы разработали и вывели в ТОП сайт курсов рисования
    Иван Стороженко
    25
    комментариев
    0
    читателей
    Полный профиль
    Иван Стороженко - Добрый день. 1)Чаще всего основная проблема заключается, в согласовании с клиентом добавляемого контента и то как он будет отображаться. На данном сайте фото и услуги конечно предоставлял клиент, все остальное уже делали мы. 2)Да в принципе, когда есть команда и понимание, что нужно делать, все идет быстро (опять же основная заминка идет на согласовании с клиентом) 3)Смысла делать новый в данном случает нет. В принципе доделывался полноценный сайт. 4)Когда клиент уже не предоставляет информацию, приходится искать у конкурентов (например с других стран или регионов). Но чаще всего клиент, хоть что-то "подкидывает".
    Яндекс: как мы модерируем объявления
    Гость
    5
    комментариев
    0
    читателей
    Полный профиль
    Гость - Это ж Яндекс, чего вы ожидали-то? Коммерческая структура с раздутым штатом, задачей которой является заработать больше денег. Любыми методами. Задача всех пользователей посадить на Директ, даже если придется разрушить суть рунета, реализуется по полной программе. Все возражающие караются и выпиливаются. И каждый из сотрудников делает все возможное и невозможное, чтобы реализовать любую дурацкую идею - за это еще и премию выхватить можно. Даже если потом придется выполнять "откат", премиальные уже заплачены. Так было с одним из фильтров Яндекса, так было с купленным им сайтом Кинопоиска, который из русскоязычной энциклопедии кино был превращен за безумные деньги в банальный платный онлайн-кинотеатр.
    Эксперимент: как уникальность контента влияет на продвижение сайта
    Гоша
    4
    комментария
    0
    читателей
    Полный профиль
    Гоша - Ну да! Тырить легче, чем самому писать... Или хотя бы заказать. Ещё и хвастаемся. Поисковики - не дураки - найдется фильтр и на тех, что воруют чужой контент. Еще немного... еще чуть-чуть. Получается, если ты украл в магазине - ты вор, а если в интернете - ты предприниматель. Успеха!
    ТОП КОММЕНТАТОРОВ
    Комментариев
    910
    Комментариев
    834
    Комментариев
    554
    Комментариев
    540
    Комментариев
    483
    Комментариев
    373
    Комментариев
    331
    Комментариев
    262
    Комментариев
    235
    Комментариев
    171
    Комментариев
    156
    Комментариев
    137
    Комментариев
    121
    Комментариев
    97
    Комментариев
    97
    Комментариев
    95
    Комментариев
    87
    Комментариев
    80
    Комментариев
    67
    Комментариев
    60
    Комментариев
    59
    Комментариев
    57
    Комментариев
    55
    Комментариев
    54
    Комментариев
    53

    Отправьте отзыв!
    Отправьте отзыв!