URL 重写 / 基本 href / Firefox 3.x.x.


URL Rewriting / base href / Firefox 3.x.x

我刚刚为我们公司完成了我们的网站,同时使用我的第一个时间.htaccess文件重写URL。当它把网站放在网上时,一切正常(使用更新的火狐版本)。

现在在我们的商店中,我不得不安装 Firefox 3.5.17,因为我们供应商的内部系统仅适用于该版本(很奇怪,但就像它一样......

在这些计算机上测试我们的网站时,似乎我的重写规则不起作用,我什至认为该版本的FireFox忽略了该文件。

所以我在我自己的计算机上安装了更新版本的 Firefox 和旧版本,我得到了相同的结果。

我有<base href="/">

以及我的htaccess文件的内容:

Options +FollowSymlinks
RewriteEngine On
RewriteRule ^([A-Za-z0-9-]+)/?$ index.php?p=$1 [NC,L]
RewriteRule ^([A-Za-z0-9-]+)/([A-Za-z0-9-]+)/?$ index.php?p=$1&cat=$2 [NC,L]

结果应该是:website.com/../..当我开始点击更多链接时,它变成了网站/../../../..等等..

我在这里做错了什么?我怎样才能让这些东西工作。

更新(已解决)

我已将基本 URL 更改为完整域。就像下面的帖子中所述。非常感谢您的回答。

这不是你的htaccess或你的规则。Firefox 不能尊重 htaccess 文件中的内容,这完全是服务器端的事情。Apache 决定是否应该遵循文件的内容。

这是因为该版本的 Firefox 不遵守没有 FQDN 的 <base> 标签。您需要做的是尝试包含主机名:

<base href="http://website.com/">

或者将所有链接更改为绝对URL,而不是具有以下链接:

<a href=".../...">next link</a>

它需要:

<a href="/.../...">next link</a>