Ajax 用于#的htaccess重定向!在URL中

Ajax 用于#的htaccess重定向!在URL中,ajax,.htaccess,url-rewriting,Ajax,.htaccess,Url Rewriting,我正在使用ajax在我的网站上加载页面。 每次加载页面时,我都会将浏览器中的url更改为 http//www.example.com/old/page/#!/new/page/ 通过使用javascript通过window.loaction进行设置 现在我想做的是当有人通过输入url来访问我的网站时 http//www.example.com/old/page/#!/new/page/ 他应该会自动被重定向到 http//www.example.com/new/page/ 这在facebo

我正在使用ajax在我的网站上加载页面。 每次加载页面时,我都会将浏览器中的url更改为

http//www.example.com/old/page/#!/new/page/
通过使用javascript通过window.loaction进行设置

现在我想做的是当有人通过输入url来访问我的网站时

http//www.example.com/old/page/#!/new/page/
他应该会自动被重定向到

http//www.example.com/new/page/
这在facebook上也发生过

有人能帮我用所需的.htaccess代码实现同样的功能吗


提前感谢

我认为在服务器端甚至看不到URL中超过#符号的任何内容。所以htaccess、php等甚至不知道散列是从哪里开始的。我认为为了实现这一点,你必须使用客户端重定向

window.onload = function(){
  // First we use a regex to check for the #! pattern in the hash     
  if(window.location.hash.match(/\#\!/i)){
    // If we found a match, use substring to remove the #! and do a redirect
    window.location = window.location.hash.substring(2);
  }
};

此示例将在页面加载时立即重定向用户。不幸的是,以这种方式重定向不会帮助搜索引擎重新索引您的站点,但这只是使用花哨的javascript或基于哈希的URL的陷阱之一。

我尝试使用hte以下客户端脚本requestedURL=“”+window.location+”;position=requestedURL.search(“#!”);DomainName=”“if(position!=-1){newpage=requestedURL.substr(position+2);requestedURL=“”;window.location=domainame+newpage;}但是这个脚本的问题是,每次进行ajax调用时都会执行它。如果您可以通过Javascript建议一些方法,这将是非常好的添加了一个示例。它在我的web服务器上工作,但您可能需要稍微调整它以适应您的环境。我尝试了您上面给出的代码,但仍然面临与我的代码相同的问题。即使通过ajax,每次加载任何内容时,都会实现此代码