如何设置.htaccess以允许shebang在url中

时间:2012-03-31 23:47:37

标签: .htaccess redirect shebang

我正在处理的项目是使用pushState,但由于Internet Explorer无法正确处理,因此在更改URL时会使用shebang。有没有设置.htaccess允许在网址中的shebang但删除它并重定向它。截至目前,如果我要转到http://www.mydomain.com/#!/whatever.php,它只显示我的索引页面。但我希望它能做的是如果你转到http://www.mydomain.com/#!/whatever.php并将其重定向到http://www.mydomain.com/whatever.php

2 个答案:

答案 0 :(得分:0)

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

答案 1 :(得分:0)

好的,所以我想出了问题的答案。所以javascript是唯一可以确定的方法,所以自从在URL中使用shebang后,它将引导您进入域的索引页面,但仍然保持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];
    }
});