170 похожих чатов

Всем привет, подскажите как делать такую штуку в автоматическом режиме:

у юзера есть некая страница типа интернет-магазина, и нужно сделать опцию чтобы он мог сам в настройках прикрутить свой домен к ней, т.е. чтобы при открытии "myusersite.com" открывалась страница "mysite.com/shop/72194", где 72194 - айди юзера например. При этом чтобы не происходил редирект, а именно домен оставался тот же.

Сейчас сделали такое для некоторых клиентов вручную, они в настройках DNS записей ставят наш сервер, а мы в nginx добавляем еще один виртуальный сайт. Но хотелось бы это сделать в автоматическом режиме, чтобы тупо юзер изменил DNS записи своего домена, на нашем сайте указал его домен, нажал "Подключить" и готово. Неужели это делаеться путем написания скрипта который изменяет конфиг nginx?

22 ответов

11 просмотров

проксей, наверное, лучше всего такое реализовать взять ноду/го и проксировать

а нужно для этого отдельный сервак брать с другим айпи или можно это все дело провернуть на одном айпи, там же где и висит продакшн?

по хостнейму определять домен на сервере и отдавать нужный? с ssl ток проблема будет

ssl можна по идеи через lets encrypt брать, правда тоже надо как-то скриптом его автоматизировать

отдельный лучше у тебя отдельный процесс будет терминировать все подключения

и он типа будет проксить на прод сервер запросы?

там дело в том чтобы он был динамическим) возможно это и nginx может, но придётся скриптик для генерации пописать

а в чём проблема возникла просто на ноде проверять хост запроса?

так как то не нравиться мне это на ноду сваливать у меня нода чисто апишку представляет, статику раздает nginx разве что имееться ввиду написать отдельную проксю на ноде

да по сути можно и отдельную, единственное что задержка вырастит из-за прокси.

а нода норм здесь в качестве прокси потягается с тем же nginx?

докер и как запускать такие контейнеры - это задача не из разработки, а из девопса и кодогенерации (UPD: скорее конфига генерации). Отдавать статитку нодой такое себе, да даже на голанге, такое себе. Самый простой способ, написать скрипт для сервера, который будет генерировать новый конфиг для nginx и получать на домен ssl, создаст папку и подтянет их хранилища нужный код. Минус, это костыль. Плюс, делается быстро и относительно без проблемно. Вариант цивильнее, делать это через генерацию конфига для докера и поднятие всего этого дела в докере, минусы сложно и остаются костыли. Вариант три, правильный. Отдельные физические сервера или облако, много работы девопса и разворачивание из нужного образа системы, докера и т.д., с уже сгенерированным заранее кодом. Самый простой это автоматически через хуки генерить конфиг для nginx.

спасибо, проблема что девопса нету пока что, и приложение вне докера щас работает, ради одной этой фичи не хочеться все переделывать

только не понял насчет 3 варианта, зачем пилить отдельные машины?

тогда просто написать скрипт, который будет менять конфиг докера, и всё, стартовать его их ноды. Так как правильно такие вещи делаются через ансибл или кубернейтсы всякие. Там весь смысл, что чуваку поднимают порезаную до нельзя виртуалку, в которую суют его сайт и т.д. Ровно как хостеры всяких пхп делают. Присобачивают домен к своему серверу и днс, а дальше дело техники, по щаблону развернуть образ, и даже стартовать сгенерированый например сайт или магазин.

затем что ты не сможешь поднять вируталку, в другой вируталке? с ограничением ресурсов или я чего-то не знаю?

разве это практика такая? это же дорого будет обходиться для компании, не? суть же что это saas сервис, там вот эти страницы магаизнов почти везде одинаковые, отличается только контент который и так фронт грузит по апи, это не отдельные инстансы каких-то образов или еще чего то

если вам нужно только отдавать статику, и ту не всю, и только присобачить домен к апи, то ваш путь написать для nginx модуль или просто генератор конфига и все, который все домены указанные для него будет слать туда куда нужно. это делается обычным bash скиптом.

для

да, можете просто посмотреть код опенсурсного аналога isp manager и т.д. как это реализована у них, если найдете. В вашем случае суть одна, сбилдить готовый конфиг подставив в него нужные значения, и рестартнуть nginx. Правда неплохо было бы написать линтнер проверяющий на ошибки, но и только.

Похожие вопросы

Обсуждают сегодня

я не магистр хаскеля, но разве не может лейзи тип конвертнуться в не-лейзи запросив вычисление содержимого прям при инициализации?
deadgnom32 λ madao
100
Всем привет! Массив вводится с клавиатуры, кол-во элементов неизвестно, поэтому я указал arr db 100 dup(?) С нахождением максимума проблем нет, а вот минимум почему-то всегд...
En Vind Av Sorg
11
в сях есть множество как в питоне? для удаление дубликатов
Linus
25
читать файл максимально быстро? странный вопрос))
zamtmn
53
Кто создает тут ботов для телеграмм групп ?
Antskup
8
а как бы вылезти из ИО, что то типа IO -> Ether или в какую сторону смотреть ? что то туплю
Fedor
14
Я хочу запустить свой проект в тг. Что-то между пирамидой и майнилкой. Еще подобного ничего не было. Уникальная идея. Нужен именно не бот, а приложение. С ввод, выводом тон...
Павел А.
6
тоесть, указав return eax, сгенерируется никому ненужная инструкция mov eax,eax ?
Aiwan \ (•◡•) / _bot
24
а зачем этот вопрос для удаления из чата?
Mёdkinson Medvezhkin
63
How to create an OS in C? what to study?
Linus
18
Карта сайта