在nginx配置中重写URL时,我需要帮助,该URL的工作方式如下:
/ products /#details / produce /#items
但是它不能正常工作,因为#正在产生问题。
注意:URL中的#表示页面部分
例如 www.test.com/products/#details 应该重定向到 www.test.com/produce/#items
答案 0 :(得分:0)
使用nginx 是不可能的,因为浏览器不会将标签(#details
)发送到服务器。因此,您无法在Nginx或任何其他Web服务器中进行重写。
换句话说,标签仅对浏览器可用,因此您必须使用Javascript处理它。服务器无法读取它。
http://tools.ietf.org/html/rfc2396#section-4
当使用URI引用对标识的资源执行检索操作时,可选的片段标识符(由叉号(“#”)字符与URI分开)由用户代理解释的其他参考信息组成成功完成检索操作后。因此,它不是URI的一部分,但通常与URI结合使用。
答案 1 :(得分:0)
没有办法重写。 #
及其之前的所有内容都不会发送到服务器,它是在客户端完全处理的。