2012-07-04 4 views
0

У меня есть следующий mod_rewrite, используя прокси-флаг для перенаправления из одной папки в другую URL сайта подобласти следующим:mod_rewrite прокси URL отсутствующие изображения/CSS

файл .htaccess расположен внутри http://www.domain.com/test/ папки:

RewriteEngine on 
RewriteRule ^($|/.*) http://subsite.site.com/$1 [L,P] 

Проблема, изображения, CSS и ссылки не отображаются должным образом. Ссылки, как представляется, указывают на: http: // www. domin .com/linkname.html

Я пробовал делать RewriteBase/test/и/без везения и не мог понять, как это сделать.

Что мне недостает в приведенном выше коде, чтобы он работал с относительными путями по целевому URL?

+0

Вы уверены, что рассматриваемые ссылки являются относительными? – joshOfAllTrades

+0

Если я поместил правила перезаписи в .htaccess в корневую папку, он отлично работает, но в подпапках изображения не удастся. – user1502298

+0

images/css отображаются как http: // domain. com/thesubitelink/вместо того, чтобы быть http: // domain. com/test/thesubsitelink/ – user1502298

ответ

0

О, вы хотите изменить внутренний контент?

Mod_rewrite изменяет только заголовки, а не содержимое, и вам определенно нужно что-то другое, например mod_proxy_html. Однако переписывание контента только для изменения URL-адресов обычно можно полностью избежать (при условии, что вы контролируете свой контент), делая все пути законно относительными. В таких случаях все пути в содержимом должны быть такими: linkname.html или some_path_from_here/linkname.html вместо /linkname.html или some_path_from_here/linkname.html

+0

Спасибо .. Да, мне нужно было бы изменить содержание. Я пробовал mod_proxy_html, но это тоже не удалось. Только так я смог исправить это, установив правила mod_rewrite в корневой каталог для прокси перенаправления каждой папки в пункте назначения. Но это перепишет мой текущий сайт. Это мой неудачный код mod_proxy_html, любое предложение? ProxyPass/тест/http://subdomain.DestinationSite.com/ ProxyHTMLURLMap http://subdomain.DestinationSite.com/тест ProxyPassReverse http://subdomain.DestinationSite.com/ SetOutputFilter proxy-html ProxyHTMLURLMap// test/ ProxyHTMLURLMap/test/test user1502298