0

我正在处理的一个项目正在使用 pushState,但由于 Internet Explorer 无法正确处理它,因此在更改 URL 时使用了 shebang。是否可以设置 .htaccess 以允许在 url 中使用 shebang 但将其删除并重定向它。到目前为止,如果我要转到http://www.mydomain.com/#!/whatever.php,它只会显示我的索引页面。但我想做的是,如果你转到http://www.mydomain.com/#!/whatever.php并将其重定向到http://www.mydomain.com/whatever.php

4

2 回答 2

0

不,这是不可能的.htaccess,因为 之后的所有内容都#没有发送到服务器。您必须使用 javascript 进行重定向。

于 2012-03-31T23:54:50.807 回答
0

好的,所以我想出了问题的答案。所以 javascript 是唯一确定的方法,因此由于shebang在 URL 中使用 a ,它会将您定向到域的索引页面,但仍保持 URL 相同。所以我只是在我的页面顶部添加了以下内容。

$(document).ready(function(){
    var loc = self.document.location;
    if(loc.hash){
        var href = loc.hash.split("#!/");
        window.location = loc.protocol +'//'+ loc.host +'/'+href[1];
    }
});
于 2012-04-01T20:25:48.327 回答