E.g。
重写^ / page / #page;
由于片段的性质(从未发送到服务器等),我不确定这是否可行。但是既然我正在重写一个,而不是一个,我认为它应该有用吗?
在这种情况下,我如何编码/转义该哈希符号,以便它不会启动注释..?
谢谢!
答案 0 :(得分:1)
如您所知,片段由浏览器使用,不会发送到服务器。
但您可以使用nginx
将请求重写为包含片段的新URI,但只有在将新URI发送到浏览器时才会有意义,即使用HTTP 3xx响应。
rewrite
指令将在提供redirect
(302)或permanent
(301)标志时生成HTTP 3xx响应(或替换字符串以方案开头 - 请参阅{ {3}}更多)。
例如:
rewrite ^/page /#page redirect;
答案 1 :(得分:0)
添加引号可能会有所帮助。我在Docker Nginx最新映像(1.17.4)中尝试过
rewrite ^/page "/#page" redirect;