2012-09-16 133 views
0

我的.htaccess文件在IE中无法正常工作,它在FireFox和Chrome中正常工作,但IE图像不会加载,并且链接无法正常工作。 CSS工作正常,所有的PHP接口都可以正常工作。.htaccess在IE中无法正常工作

我很确定它与我需要从URL中获取2个GET变量有关,因为当我只需要拉一个变量时它工作正常。无论如何,这里是我的代码

RewriteEngine On 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^/?([^/]+)/([^/]+)/?$ /website/index.php?id=$1&c=$2 

请帮助,我一直在寻找解决方案的小时。

+0

您是否在页面的标题中使用了''标签? –

+0

是的,它是否必须在? – user1672744

回答

0

我不明白任何重写条件将如何依赖于浏览器.. 您的问题必须在其他地方。

也许尝试删除的领先/从您的规则:

RewriteRule ^([^/]+)/([^/]+)/?$ /website/index.php?id=$1&c=$2 
+0

任何可能的建议?除了图片和链接之外,一切正常,例如,可以说基本网址是localhost/website/148/category,并且我点击一个链接,该链接应该将我带到localhost/website/149/category,它将我带到localhost/website/148 /分类/ 149 /类别。所以它只是添加到它接缝的网址上。 – user1672744

+0

链接是 user1672744

+0

and the image src is user1672744

0

一切工作,除了图像和链接,例如,可以说基本URL为localhost /网站/ 148 /类别和我点击一个链接,应该带我到本地主机/网站/ 149 /类别它需要我localhost /网站/ 148 /类别/ 149 /类别。所以它只是添加到它接缝的网址上。

这是一个相对/绝对URI问题,与您的重写规则无关。使用<base>标签应该解决这个问题,但有bugs in versions of IE8,导致其没有FQDN在前面被忽略,像:

<base href="http://localhost/website/"> 

(是否能解决这个问题甚至没有真正确定)。

是的,它需要在所有其他参考和<head> </head>标记之内。解决这个问题的唯一方法是将所有链接改为绝对URI,而不是相对的链接。

+0

我知道它的工作原理,我已经设置了标签,但由于某种原因,它完全忽略了页面的一部分,也许是因为我回应了链接和图像。 – user1672744