现在我的网站上的所有href
和src
都指向/some/url
。一开始总是有一个斜线。
我目前正在使用服务器上的子目录测试该网站,该子目录的地址为http://somedomain.com/subdirectory/
(生产将为http://somedomain.com
)
无论如何暂时将/some/url
从http://somedomain.com/some/url
转换为http://somedomain.com/subdirectory/some/url
而不实际更改每个href
和src
属性。从我可以用base
标签做出的,它不会那样工作。同时将RewriteBase
从/
更改为/subdirectory
也不起作用(不太熟悉mod_rewrite,也许有人可以填写我的内容)
答案 0 :(得分:0)
我还没有尝试过,但mod_proxy_html也许可以做到这一点。来自文档:
mod_proxy_html是输出过滤器 重写代理中的HTML链接 情况,确保链接工作 对于代理之外的用户。它服务 与Apache的目的相同
ProxyPassReverse
指令适用于 HTTP标头,是必不可少的 反向代理的组成部分。例如,如果公司有 应用服务器在
appserver.example.com
这只是 从公司内部可见 内部网络和公众 网络服务器www.example.com
,他们可能会 希望提供一个门户 应用服务器在http://www.example.com/appserver/
。 当应用程序服务器链接到时 本身,这些链接需要 重写为通过网关工作。 mod_proxy_html用于重写<a href="http://appserver.example.com/foo/bar.html">foobar</a>
foobar 让它可以从外面访问。
答案 1 :(得分:0)
在 somedomain.com 中的.htaccess文件中,你可以输入:
Options +FollowSymLinks
RewriteEngine On
RewriteRule (.*) http://somedomain.com/subdirectory/$1 [r=301,nc]