我有一个类似的网站:
的http://*mysite.com/search/
in index.php 正为history.js生成History.pushState()
所以它看起来像:
http://*mysite.com/search/var1-var2-var3.html(html5)
http://*mysite.com/search/#var1-var2-var3.html& _suid = * *(html4)
问题是:如何为html4版本的链接创建重写规则,是否可以使用此哈希键?
html5重写规则如下所示:
RewriteRule ^([^-]+)-([^-]+)-([^-]+).html$ index.php?var1=$1&var2=$2&var3=$3 [L]
答案 0 :(得分:0)
不是,在mod_rewrite中不可能使用这个哈希键。
mod_rewrite对于在html4 html中捕获这些变量没有帮助,因为哈希标记之后的所有内容都不会被发送到服务器。如果您只更改哈希标记并在哈希标记之前保留相同的URL,则服务器甚至不会被命中。
所以,你需要使用javascript解析url的这一部分,然后通过ajax发送你的命中。发送到服务器的URL对于html4和html5可以是相同的。