Всем привет, сегодня расскажу вам про софт, который значительно облегчает мне ежедневную рутину при разворачивании лендингов. Работаю я практически всегда по API, поскольку не особо доверяю серверам ПП: они могут лежать, они могут быть весьма неторопливыми ну и, ясное дело, что невозможно ничего сделать с кодом прокл и лендов.
На чём это всё работает:
Для начала оглашу технические требования для работы софта, поскольку мой setup довольно специфичен:
— виртуальный сервер (VDS) Windows Server 2016 в качестве OC (дада, виндовс – ван лав), но пойдёт и любая другая винда
— Internet Information Services (IIS) в качестве веб-сервера
— Freenom в качестве регистратора доменов
— Ну и CloudFlare он и в Африке CloudFlare
Не пугайтесь: даже если у вас просто обычный хостинг на Бегете/Макхосте, на который вы по FTP заливаете файлики, описание работы с данной программой даст вам пищу для размышлений, и вы сможете внятно составить ТЗ для какого-нибудь кодера-фрилансера или на худой конец кинуть ему ссылку на эту статью и сказать «Также хочу!».
Чем обусловлен выбор VDS для работы с лендами вместо обычного хостинга? В первую очередь возможностью автоматизации: далеко не у каждого хостера есть API, через который можно было бы создавать новые сайты и вязать к ним домены. В свою очередь на VDS вы ни от кого не зависите, а практически любой веб-сервер (IIS, Apache, Nginx) возможно автоматизировать так, как вам будет угодно. Но хватит болтовни.
Перейдём к возможностям софта:
1) Создание нового сайта. Включает в себя:
a. Распаковка файлов ленда из архива в отдельную папку
b. Создание сайта в веб-сервере
c. Парковка к сайту любого кол-ва зареганных доменов
d. Проброс доменных имён через CloudFlare
2) Парковка к сайту новых доменов c пробросом через CloudFlare
3) Удаление припаркованных доменов (с удалением из CF)
4) Удаление сайта целиком со всеми файлами (с возможностью переноса файлов сайта в архив)
Работает всё это дело через консоль:
Теперь рассмотрим схему работы этого Франкенштейна.
На самом деле, это сделанный на коленке софт, состоящий из:
1) Консольных команд для работы с веб-сервером IIS
2) Вызовов API Freenom
3) Скрипта для работы с CloudFlare, который в арбитражном сообществе объявился благодаря NZT
Итак, при создании нового сайта софт через консоль вызывает команды управления веб-сервером, далее через API Freenom к серверу добавляются домены, а потом они с помощью скрипта «от NZT» добавляются в CloudFlare.
Про консольные команды для управления веб-сервером IIS особо ничего знать не нужно кроме того, что они есть. Документация вам в помощь.
А вот про API Freenom расскажу подробнее. В первую очередь, чтобы получить к нему доступ, надо закинуть себе на счёт фринома 10 баксов. Они там будут лежать и тратиться не будут, а фрином будет думать, что вы являетесь реселлером его доменов, хехе. Второе: регать через апи БЕСПЛАТНЫЕ домены НЕЛЬЗЯ, а вот платные — можно. Поэтому, как вы могли заметить в описании, мой софт не регает домены, а просто получает список доменов, предварительно зареганных бесплатно ручками (да, я скряга!).
Про скрипт для CloudFlare надо сказать лишь то, что его надо установить, если вам нужен сам CF. Как и что — смотрите в паблике NZT, либо ищите тут, я делал репост.
Теперь кратко про настройки софта:
Все они хранятся в файле appsettings.json. Открываем его в любом текстовом редакторе.
Вводим сюда логин-пароль от FreeNom. Если хотим использовать CloudFlare, то меняем false на true в use_cloudflare, а также меняем, если надо путь к файлу domains.txt из «скрипта NZT». Ещё прописываем путь к папке, в которой будут хранится все ваши сайты (iis_sites_path). Последняя настройка – путь к папке с архивом, сюда файлы лендов будут перемещаться после удаления. Если она не задана, то файлы ленда будут просто удалены. Обращаю внимание, что при вводе путей используется не одинарный, а двойной слеш \\ !!!
Софт лежит на Гитхабе, как собирать из исходников писал уже не раз.
Выводы из всей этой катавасии:
1)Можно в пару кликов разворачивать из лендов сайты, привязывать/отвязывать домены, прокидывать их через CF (а ещё, кстати и сертификаты HTTPS генерить через Let’s Encrypt)
2)Нужно использовать виртуальный сервер, а не хостинг!
3)Нужно использовать регистратора доменов, который предоставляет API для регистрации/удаления доменов, а также для изменения NS-серверов.
4)Нужно лить в плюс!
Наше вам с кисточкой.
Источник: https://vk.com/@webyellow-avtomatiziruem-rabotu-s-domenami-hostingami-lendingami-i-clo