让 apache 和 django 添加尾部斜杠
我的 /train 目录通过以下方式别名为 httpd.conf 中的脚本: WSGIScriptAlias /train /some-path/../django.wsgi
它运行良好,除了一个问题。如果用户转到 /train (没有尾部斜杠),它不会将他重定向到 /train/,而只会给他正确的页面。这是一个问题,因为这样,当没有使用尾部斜杠来访问该页面时,该页面上的相对链接会导致错误的位置。
这该如何解决呢?
谢谢。
My /train directory is aliased to a script in httpd.conf by:
WSGIScriptAlias /train /some-path/../django.wsgi
And it works well, except for one problem. If a user goes to /train (with no trailing slash) it will not redirect him to /train/, but will just give him the right page. This is a problem because this way the relative links on this page lead to the wrong place when no trailing slash was used to access it.
How can this be worked out?
Thanks.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
我正在使用类似的方法将 /train 重定向到 /train/,我所做的是将所有不以 / 结尾的 URL 重定向到 /train/。
I'm using something like this for redirecting /train to /train/, what I do is redirecting all the URL than doesn't end with / to /train/.
如果您只需要从
/train
重定向到/train/
,而不是从每个没有尾部斜杠的子目录重定向,那么有一个使用 RedirectMatch 指令的更简单的解决方案:If you just need to redirect from
/train
to/train/
and not from every subdirectory without a trailing slash, then there's a simpler solution using the RedirectMatch directive:将您的 urlconf 设置为接受
train/
为有效,然后使train
指向 通用重定向到/train/
。Set your urlconf to accept
train/
as valid instead, then maketrain
lead to a generic redirect to/train/
.