2013-07-22 1 views
6

Я ищу некоторую помощь с моим файлом .htaccess..htaccess - Маскирование и перенаправление на поддиректорию на другом сервере

Короче говоря, у меня есть куча контента вверх в подкаталоге www.myserver.com/forum/ (этот каталог не мой выбор, и не может быть изменен), который включает в себя как форум (myserver.com/forum/forum) и вики (myserver.com/forum/wiki) и это abviously не идеальный макет. Я не владею myserver.com, и там есть контент, который не мой, хотя у меня есть полный доступ ко всему серверу.

У меня также есть доменное имя www.mydomain.com, который я хочу, чтобы перенаправить и маскировать таким образом, что если пользователь переходит к mydomain.com/<something> они будут показаны содержание от myserver.com/forum/<something> в то же время показывается в адресной строке mydomain.com/<something>.

Еще одна вещь, которую я хотел бы видеть, хотя это не является жизненно важным, будет покупать за 404 генерируемой кем-то печатал в mydomain.com/somethingThatDoesNotExist должен перенаправлять mydomain.com/404.php вместо дефолта myserver.com в 404.

Я вы пробовали целый ряд разных подходов и искали экстенсивно в течение последнего дня или около того в Интернете - я уверен, что ответ даже здесь на SO где-то, но все руководства/примеры, которые я пробовал, не сработали, и я чувствую, что Я собираюсь в кругах.

Большое спасибо заранее.

EDIT: И я точно знаю, что .htaceess включен.

ответ

1

если пользователь переходит к mydomain.com/ они будут показаны на содержимое из myserver.com/forum/ в то же время показывается mydomain.com/ в адресной строке.

Первое, что нужно понимать, что это возможно, только если mod_proxy включена на сервере Apache из mydomain.com.

После того, как вы включили mod_proxy, mod_rewrite и .htaccess через httpd.conf на mydomain.com, поместить этот код в .htaccess под DOCUMENT_ROOT каталоге:

Options +FollowSymLinks -MultiViews 
# Turn mod_rewrite on 
RewriteEngine On 

RewriteRule ^(.*)$ http://myserver.com/$1 [L,P] 

я должен думать немного больше о вашей 404 требование, но если вы получите эту работу, я уверен, что мы сможем найти обходной путь для этого.

+0

Спасибо за ваш ответ. Я не смог изменить htaccess на 'mydomain.com', потому что он зарегистрирован с godaddy, и они только видят, что позволяют изменять их интерфейс. Тем не менее, мне удалось настроить все так, чтобы набрав в файле 'mydomain.com/ ' будет '' myserver.com/forum/ 'правильно, так что теперь мне просто нужен код htaccess, чтобы сделать' mydomain.com/ ' отображаются в адресной строке. – DTR

+0

Хорошо, конечно, дайте мне знать. Просто имейте в виду, что если флаг 'P' не используется (с включенным mod_proxy), произойдет внешнее перенаправление, и URL-адрес действительно изменится в браузере. – anubhava

0

Вы могли бы сделать некоторые проксирование с PHP или любой другой язык, который они позволяют ..
Посмотрите на file_get_contents behind a proxy?

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