Htaccess Rewriterule虚拟目录打破所有链接

时间:2011-06-24 13:48:01

标签: .htaccess mod-rewrite

我想我已经浏览了一百万篇文章和每个人的代码,但我无法让它发挥作用!我尝试的每个代码都有效,但它显示了重定向网址而不是虚拟网址。

我希望mysite.com/company/client/实际显示mysite.com/company/client.php的结果,但client.php中的文件会被破坏,除非我创建绝对链接。

例如,从http://mysite/company/client/查看时mysite.com/company/css/style.css已损坏,但在转到真实文件时运行正常mysite.com/company/client.php

我希望有人知道如何解决这个问题,而无需将client.php中的所有链接更改为绝对!

谢谢!

斯科特

1 个答案:

答案 0 :(得分:1)

您可能需要考虑HTML BASE标记:

...
<head>
...
<base href="http://mysite/company" />
...
</head>
...

你把它放在client.php文件中,然后是任何相对链接&amp;从右侧文件夹开始,引用自动“转换”为绝对值。


请参阅有关BASE标记可能出现的问题的评论。 另一种选择是通过向RewriteRule添加“[R]”来执行重定向而不是重写。但是,您的用户将在URL中看到“client.php”。