![URL 中的双斜杠在 $_SERVER['REQUEST_URI'] 中自动转换为单斜杠](https://linux22.com/image/736979/URL%20%E4%B8%AD%E7%9A%84%E5%8F%8C%E6%96%9C%E6%9D%A0%E5%9C%A8%20%24_SERVER%5B'REQUEST_URI'%5D%20%E4%B8%AD%E8%87%AA%E5%8A%A8%E8%BD%AC%E6%8D%A2%E4%B8%BA%E5%8D%95%E6%96%9C%E6%9D%A0.png)
答案1
如果问题在于 Google 已将双斜杠版本以及常规路径编入索引,那么最好使用重定向将 Google 发送到正确的路径。
当您用 nginx 标记此问题时,最简单的解决方案是使用选择性重写,例如:
location / {
if ($request_uri ~ ^//) {
rewrite ^/.* $uri permanent;
}
[...]
}
之所以有效,是因为$request_uri
是原始 URI,而 $uri 是规范化的 URI。重写语句将完整的 URI 替换为规范化的 URI,这样 Google 就知道双斜杠版本应该被规范化的 URI 替换。