301 将带有尾部斜杠的网址重定向到没有尾部斜杠的网址 web2py

301 redirect urls with trailing slash to urls without trailing slash web2py

测试 web2py 应用程序表明,它可能会受到 google 的惩罚,其中包含重复内容,因为 www.xyz.com/about.html 和 www.xyz.com/about.html/ 内容相同。 我想将带有尾部斜杠的 301 重定向网址重定向到没有尾部斜杠的网址。 我如何使用 web2py 做到这一点? 对于上述目的,有没有比 301 重定向更好的方法?

非常感谢!

在第一个模型文件的前面,你可以这样做:

if request.url and len(request.url) > 1 and request.url.endswith('/'):
    redirect(URL(args=request.args, vars=request.get_vars))

request.url 等同于 request.env.path_info(即,它包含最初请求的完整 URL 路径,但没有查询字符串),因此,上面的内容甚至会重定向 /some/path/?var=value/some/path?var=value.

或者,您可以配置网络服务器(例如 Nginx)来处理重定向。