Пользовательские домены для одного сайта

У меня есть веб-приложение php на Apache, которое поддерживает нескольких пользователей, идентифицированных dist_id в строке запроса. Так https://main.com/login?dist_id=21 показывает страницу в другом стиле из https://main.com/login?dist_id=26

Что я хочу сделать, это зарегистрировать доменное имя для каждого пользователя и поддерживать чистоту URL-адресов, чтобы https://brandx.com/login невидимо указывает на https://main.com/login?dist_id=21. После входа мне больше не нужен dist_id, но я хочу сохранить домен пользователя, чтобы https://brandx.com/products?show=1 и т.д. все еще работает.

Возможно ли это и как лучше всего это сделать (mod_write, DNS, в PHP)?

Примечание. У меня уже есть правило перезаписи для добавления index.php, который является точкой входа для всех запросов.

RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php [QSA,L]

Я думаю, что я близко с:

RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php?dist_id=26 [QSA,L]

После входа в систему это работает: https://brandx.com/categories но это дает ошибку 404: https://brandx.com/categories?parent_id=12329

0

Решение

Предположительно, все эти «сайты» будут иметь одинаковые структуры URL (минус параметры запроса)? В этом случае, вероятно, было бы проще установить определение для вашего main.com сайт, а затем добавьте все свои brandx.com домены как псевдонимы, например

<virtualhost *:80>
ServerName main.com
ServerAlias brandx.com brandy.com brandz.com etc...
</virtualhost>

Затем вы используете mod_rewrite, чтобы проверить HTTP-заголовок «Host:», чтобы увидеть, в какой домен заходят пользователи, и переписать его, если необходимо.

1

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector