这里有一个小但令人困惑的htaccess问题,在mod_rewrite上。 我们需要转发: http://www.mydomain.com/ladies-boots/?shoesize=43&calfwidth=K 至 http://www.mydomain.com/ladies-boots/#nogo&somevar=1&shoesize=43&calfwidth=K
我们的代码(感谢另一个Stackoverflow帖子)是:
RewriteCond %{QUERY_STRING} ^shoesize=([0-9]+)\&calfwidth=([A-Z])$
RewriteRule ^ladies-boots/$ http://www.mydomain.com/ladies-boots/#nogo&somevar=1&shoesize=%1&calfwidth=%2? [R=301,L]
上面的工作非常好,除了hash#tag被Apache转义,它将URL写为%23而不是#。
有什么方法可以解决这个问题吗?我确实需要一些Javascript /非SE友好功能的哈希标记,如果没有可用的哈希标记,上述URL就无法使用。
非常感谢!
答案 0 :(得分:2)
上面的工作非常好,除了hash#tag被Apache转义,它将URL写为%23而不是#。
如果在方括号内使用NE
标记,则可以使用非标记的哈希标记:[R=301,L,NE]
答案 1 :(得分:0)
没有办法。网址只能包含字母,数字和符号/? &安培;