答案 0 :(得分:3)
哈希标记是仅限浏览器的概念,永远不会发送到服务器。所以你不能在nginx中重写。因为当您访问http://www.example.com/my-path-here#hashvalue
时,只会发送nginx服务器http://www.example.com/my-path-here
你需要的是Javascript来处理这样的事情。下面是一个示例html页面,它可以做到这一点
<html>
<head>
<script>
var loc = window.location;
if (!loc.pathname.endsWith("/"))
loc.replace(loc.origin + loc.pathname + "/" + loc.hash);
</script>
</head>
<body>
<h1> You are here -
<script>
document.write(loc.href);
</script>
</h1>
</body>
</html>