Я разрабатываю сайт SaaS и буду предлагать услугу white label с некоторым членством. Во время регистрации пользователя я буду просить пользователей ввести «имя пользователя», которое будет использоваться для поддомена, т.е.
username.example.com.
Если я начну создавать поддомены после регистрации, используя введенное ими имя пользователя, какие шаги я должен предпринять, чтобы позволить пользователю использовать белый ярлык для своего домена. Я знаю, что им нужно будет добавить запись cname, чтобы указать домен или поддомен на поддомен на нашем сервере. Но какие еще шаги мне нужно предпринять, чтобы все заработало?
Я не совсем понимаю, что вы имеете в виду под "белой этикеткой", но я знаю, что многие сайты, которые выдают бесплатные поддомены, делают это так
Они создают каталог для всех, кто подписывается, и заставляют свой веб-сервер перенаправлять все поддомены в папки на корневом веб-сайте.
Пример:
user.myservice.com -> myservice.com/user
Чтобы это работало, вам нужно перенаправить все поддомены (подстановочный знак *
или @
в зависимости от DNS-хоста) на сервер. Наконец, вам нужно настроить Apache следующим образом:
RewriteCond %{HTTP_HOST} !^domain\.com
RewriteCond %{HTTP_HOST} ^([^.]+)
RewriteRule ^(.*) /%1/$1 [L]
Если вы не хотите, чтобы люди могли использовать ваш сервис в своей собственной DNS-среде, вам нужно добавить его как виртуальный хост. Пример:
<VirtualHost>
DocumentRoot /www/user
ServerName user.domain.com
ServerAlias *.user.domain.com
ServerAlias usersowndomain.com
...
</VirtualHost>