Apache .htaccess重定向在保留查询字符串的同时添加哈希
在.htaccess中使用mod rewrite如何在保留查询字符串的同时向url添加哈希?我尝试过的所有操作都会将查询字符串追加到末尾,从而使其成为散列的一部分 这就是我想做的:Apache .htaccess重定向在保留查询字符串的同时添加哈希,apache,.htaccess,mod-rewrite,Apache,.htaccess,Mod Rewrite,在.htaccess中使用mod rewrite如何在保留查询字符串的同时向url添加哈希?我尝试过的所有操作都会将查询字符串追加到末尾,从而使其成为散列的一部分 这就是我想做的: http://example.com/order_now?utm_campaign=eblast082814 重定向到 http://example.com/index.php?utm_campaign=eblast082814#order_now 这是我当前的非工作状态。htaccess: RewriteEng
http://example.com/order_now?utm_campaign=eblast082814
重定向到
http://example.com/index.php?utm_campaign=eblast082814#order_now
这是我当前的非工作状态。htaccess:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/\.]+)?$ /index.php?#$1 [QSA,R,NE,L]
以上错误地重定向到
http://example.com/index.php?#order_now&utm_campaign=eblast082814
默认情况下,查询字符串似乎是在
#order\u之后添加的
下面是一个解决方案(通过捕获查询字符串并手动添加)
我只需要从您的代码中删除[QSA](否则它会再次将查询字符串追加到末尾),它工作得非常好。谢谢对不起,我忘记从我的答案中删除QSA
。不客气,很高兴它起作用了。如果我的答案有用的话,别忘了验证一下
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{QUERY_STRING} ^(.*)$
RewriteRule ^([^/\.]+)?$ /index.php?%1#$1 [R,NE,L]