×
Россия +7 (495) 960-65-87

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

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

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

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

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

(Голосов: 5, Рейтинг: 5)
Читайте нас в Telegram - digital_bar

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


Новые 
Новые
Лучшие
Старые
Сообщество
Подписаться 
Подписаться на дискуссию:
E-mail:
ОК
Вы подписаны на комментарии
Ошибка. Пожалуйста, попробуйте ещё раз.
Отправить отзыв
ПОПУЛЯРНЫЕ ОБСУЖДЕНИЯ НА SEONEWS
#SEOnews14: мы празднуем – вы получаете подарки!
Анна Макарова
358
комментариев
0
читателей
Полный профиль
Анна Макарова - Гость, добрый день! С победителями мы связывались сразу после розыгрыша. Если мы вам не написали, значит, ваш номер не выпал. Но не расстраивайтесь, у нас обязательно будут новые розыгрыши!
Google Data Studio: делаем красивые отчеты по контекстной рекламе для клиентов
Светлана Зубрицкая
1
комментарий
0
читателей
Полный профиль
Светлана Зубрицкая - Нужно убрать пробелы между строк и заменить кавычки на вот такие "
Как ускорить сайт на WordPress, чтобы получить 100/100 в Google PageSpeed Insights
Георгий
1
комментарий
0
читателей
Полный профиль
Георгий - Все что рекомендуется в этой статье есть у w.tools. Ни разу не пожалел что подключился. Своя CDN сеть, кеш статики и динамики, минификация js\css и кешируемого html, оптимизация всех типов картинок и еще куча всего полезного. Сайт летает и я не знаю проблем. Могу рекомендовать от души.
Война с дубликатами. Как нужно и как не нужно канонизировать URL
Ann Yaroshenko
5
комментариев
0
читателей
Полный профиль
Ann Yaroshenko - Дмитрий, добрый день! Если вы проставили на странице с автозапчастями rel=canonical ( а я вижу в коде, что не проставили) или в HTTP хедере, то бот, как правило: выберит ту страницу главной, которую вы указали в rel=canonical ссылке. Eсли же вы этого не сделали, то бот сам выберит оригинал (алгоритмы, по которым бот это делает, скрыты Googl-ом)
«Аудит, чтобы ты заплакала…», или Что делать, когда получил сторонний аудит сайта
Trydogolik
12
комментариев
0
читателей
Полный профиль
Trydogolik - Да. К сожалению рекламодатели и прочие владельцы сайтов оценивают работу количеством заказов. Как SEO, где результат это позиции, а рекламу где результат это целевой трафик, оценивать количеством конверсий на сайте? Не понятно. Все что в наших силах это рекомендовать владельцу сайта, но не править на свое усмотрение.
BDD 2019: Как перестать убивать время на сбор и обработку тонны данных для SEO-аудита
Feth
1
комментарий
0
читателей
Полный профиль
Feth - Тот момент, когда от статьи в интернете получаешь больше полезных знаний и навыков, чем от своего начальства. По статьям нетпиковцев можно учебник про SEO уже сшивать, ребята молодцы. Спасибо, что делитесь информацией.
Как улучшить репутацию сайта недвижимости с помощью крауд-маркетинга
Евгений
2
комментария
0
читателей
Полный профиль
Евгений - а у вас какое впечатление от статьи?
Как я пытался купить CRM-систему, но мне ее поленились продать
Kristina
1
комментарий
0
читателей
Полный профиль
Kristina - Очень рекомендую CRM-систему польской фирмы Firmao. Все функции настраиваются в соответствии с индивидуальным потребностям компании! Советую попробовать бесплатную демо-версию, чтобы попробовать все необходимые функции, без лишних кнопок и траты дополнительных финансов! :) Сайт: firmao.ru/info
10 элементов сайта, которые гарантированно отпугнут посетителей
Андрей
2
комментария
0
читателей
Полный профиль
Андрей - Ну типа потому что клиентское seo больше для коммерции предназначено. Типа контентники и сами знают что делать. В коммерции можно тысячу причин найти чтобы поработать с сайтом, а с контентными такие фокусы уже не прокатят, поэтому и не пишут. Всё продвижение для контентников сеошники описывают в трех словах: скорость, качество, систематичность. А, ну ещё конечно же СЯ, как же я про него забыл (фундамент жеть!).
Как вывести сайт в ТОП 10 Google в 2019 году
Анна Макарова
358
комментариев
0
читателей
Полный профиль
Анна Макарова - Сергей, в нашей отрасли много заимствований из английского, иногда с ними быстрее, проще .Но будем стараться ))
ТОП КОММЕНТАТОРОВ
Комментариев
910
Комментариев
834
Комментариев
554
Комментариев
540
Комментариев
483
Комментариев
373
Комментариев
358
Комментариев
262
Комментариев
249
Комментариев
171
Комментариев
156
Комментариев
137
Комментариев
121
Комментариев
106
Комментариев
97
Комментариев
97
Комментариев
96
Комментариев
80
Комментариев
77
Комментариев
73
Комментариев
67
Комментариев
60
Комментариев
59
Комментариев
57
Комментариев
55

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