Я ищу решение для создания субдоменов программным способом в ASP.NET, ASP.NET MVC и PHP. В частности, страница профиля пользователя должна быть разрешена как для: www.domain.com/profilename
или http://profilename.domain.com
.
Обновите настройки DNS для определенного домена, чтобы * .domain.com все указывали на один и тот же хост.
Затем программно проверьте и проверьте, содержит ли первая часть используемого URL субдомен, который вы ищете, и действуйте соответствующим образом. Например, если первая часть содержит заданное профильное имя, то извлечение этой конкретной коллекции профилей данных из вашей БД и отображение ее пользователю.
Убедитесь, что ваше веб-приложение использует относительные ссылки, так что, если пользователь приходит на сайт с использованием поддомена, вы не перенаправляете его в другом месте.
Нет общего способа создания субдоменов. Вам нужно будет вызвать API, предоставленный поставщиком услуг Интернета или DNS – обычно SOAP или REST.
Либо это, либо использовать подстановочный домен (*).
На стороне IIS обязательно настройте приложение так, чтобы оно не использовало заголовки хоста.
Вы можете попробовать:
AppDomain subDomain = AppDomain.CreateDomain("ProfileUserDomain");
Хотя вам, возможно, придется настроить DNS, чтобы разрешить запрос из вашего кода. Динамические службы DNS могут быть вашим ответом.