2016-11-18 3 views
0

У меня есть субдоманная ссылка «help.example.com», вот где я создал функционирующий сайт Wp. У меня был запрос от клиента, что он хочет достичь этого сайта с помощью «help.example.com/something». Домен находится на сервере Apache..htacces перенаправить поддомен в папку

I судимой йоты он следующий строки в .htacces файл в каталоге страниц:

RewriteEngine On 

RewriteCond %{HTTP_HOST} ^help.example.com 
RewriteRule ^(.*) http://help.example.com/something$1 [P] 

Но, к сожалению, когда я называю «http://help.example.com/something» URL в браузере WP обнаружить как несуществующую субстраницу. Может кто-нибудь, пожалуйста, скажите мне, что я делаю неправильно, и предложите решение? Спасибо!

ответ

0

Похоже, вы подходите к проблеме с неправильной стороны. У попробовать, как это вместо:

RewriteEngine On 
RewriteCond %{HTTP_HOST} ^help.example.com$ 
RewriteRule ^/?something(.*)$ http://help.example.com$1 [L,QSA] 

Другой вариант действительно с помощью модуля Apache прокси, как вы уже пробовали, но опять же, вы должны перевернуть вещи:

RewriteEngine On 
RewriteCond %{HTTP_HOST} ^help.example.com$ 
RewriteRule ^/?something(.*)$ http://help.example.com$1 [P] 

Разница между двумя это тот URL, который пользователь увидит, как только он успешно войдет на страницу.


И общий совет: вы должны всегда предпочитают размещать такие правила внутри конфигурации HTTP сервера хоста вместо использования .htaccess файлов стилей. Эти файлы, как известно, подвержены ошибкам, трудно отлаживаются, и они действительно замедляют работу сервера. Они предоставляются только в качестве последнего варианта для ситуаций, в которых вы делаете , а не имеют контроль над конфигурацией хоста (читайте: действительно дешевые хостинг-провайдеры) или если у вас есть приложение, которое полагается на запись своих собственных правил перезаписи (что очевидно кошмар безопасности).

+0

К сожалению, эта игра мне «Ошибка внутреннего внутреннего сервера»: S – StoneSmith

+0

домен находится на GoDaddy ... клиент закрыл эту услугу хостинга, я думаю, потому что это дешево или не знаю ... и я У вас нет доступа к конфигурациям хоста, к сожалению – StoneSmith

+0

Я изменил флаг 'END' на флаг' L', попробуйте еще раз. Это может быть проблемой, если вы используете действительно старый HTTP-сервер apache. – arkascha

Смежные вопросы