Я пытаюсь добавить систему поддоменов с подстановочными знаками на свой веб-сервер, но она все еще не работает,
Вот шаги, которые я предпринял:
Я сделал новый файл, vhost.conf
, в каталоге var/www/vhosts/www.example.com/conf/vhost.conf
.
И я поставил:
ServerAlias *.domain.com
Затем, во-вторых, я сделал новый шаблон DNS в Plesk:
CNAME *domain.com example.com
А потом я отредактировал свой .htaccess
файл:
Options +FollowSymLinks
RewriteEngine on
RewriteCond %{HTTP_HOST} ^(^.*)\.example.com
RewriteRule (.*) user.php?user=%1
Обычно мой URL-адрес:
http://www.example.com/user.php?user=solomon
Но теперь я хочу вот так:
http://solomon.example.com
Но шаги, которые я предпринял, по-прежнему не работают.
:)) Что тут происходит?
Правильное определение CNAME для доменов с подстановочными знаками должно быть таким:
*.example.com CNAME example.com.
Итак, в plesk вы можете попробовать отредактировать запись и добавить эту точку после подстановочного знака.
Конечно, вам нужно немного подождать, пока начнется распространение DNS, не забывайте об этом.
Ваш htaccess также выглядит немного не так, хотя он должен работать, дважды ссылаться на начало строки немного странно, попробуйте вместо этого:
Options +FollowSymLinks
RewriteEngine on
RewriteCond %{HTTP_HOST} ^(.+)\.example\.com$
RewriteRule .* user.php?user=%1 [L]
Для получения дополнительной информации по 1 и 1 / Plesk попробуйте прочитать следующее руководство: http://www.1and1faq.com/forums/archive/index.php/t-602.html
Apache уже имеет отличную поддержку массовый хостинг; Предлагаю вам посмотреть, как это настроить.
Но шаги, которые я предпринял, все еще не работают
Это не очень помогает -какие не сработало?
Имена разрешаются? Отвечает ли веб-сервер на локальные запросы домена? (NB, локальный интерфейс на серверном оборудовании может быть не настроен на тот же адрес, что и общедоступный IP-адрес &.) Вам нужно будет использовать что-то вроде Telnet для подключения к IP перед отправкой HTTP-запроса вручную с нового хоста. Неужели веб-сервер не различает домены, как ожидалось? Правило перезаписи не срабатывает? Вы упоминаете Plesk - подразумевая, что это размещенная служба. Ты уверен mod_rewrite
доступен? Вы настроили именованные хосты на одном сервере с помощью одного и того же механизма? Откуда вы знаете, что просто добавляя новый файл в var/www/vhosts/www.kornar.com/conf/vhost.conf
все, что требуется? Обычно я ожидаю перезапуска веб-сервера, чтобы изменения вступили в силу.
RewriteEngine on
RewriteCond %{HTTP_HOST} !^www\.example\.com
RewriteRule ^(.*)$ http://solomon.example.com [R=permanent,L]
Пожалуйста, обратитесь по этой ссылке