Как лучше всего автоматизировать создание субдоменов (например, Главный лагерь)?
Мое требование отчасти похоже на Basecamp, где пользователи запрашивают субдомен со страницы, и я создаю его для них из своей бизнес-логики.
Что-то вроде
Мы используем ту же технику на нашем сайте. На наших серверах работают Apache, MySQL и PHP в Linux.
Наша DNS-запись содержит подстановочный знак поддомена, подобный уже предложенному EK:
www IN A 123.456.789.012
* IN CNAME www
Это перенаправит все запросы на x.y.yourdomain.com на тот же IP-адрес, что и www.yourdomain.com - также возможно иметь поддомены поддоменов.
Я не знаю perl, но в PHP вы можете получить доступ к имени хоста в любое время следующим образом:
$_SERVER['HTTP_HOST']
Я уверен, что в Perl есть эквивалент для доступа к Host-Header HTTP-запроса. Для этой цели мы используем центральный файл сценария PHP.
Редактировать: Нашли время, чтобы предоставить более подробную информацию по работе с этими доменами.
Вы можете сохранить весь поддомен в качестве первичного ключа в своей базе данных. Это гарантирует, что введенные пользователем домены будут уникальными. Вы также можете использовать эту информацию для проверки доступности во время регистрации вашего пользователя.
Я предполагаю, что ваше приложение может обрабатывать несколько пользователей через идентификатор пользователя или что-то вроде этого. Просто сохраните этот идентификатор пользователя вместе с поддоменом в базе данных. Теперь вы можете в любое время искать идентификатор пользователя по текущему домену, отправленный через заголовок HTTP-Host.
установите в своем домене подстановочный знак для * .yourdomain.com. Затем в коде используемое имя сервера находится в заголовке, просто прочтите его, чтобы обслуживать настроенный контент или при необходимости перенаправлять во вложенную папку.