我有一个django应用程序,在每个URL conf的末尾都有/.例:
# user home page
(r'^home/$', 'user_home_page'),
Run Code Online (Sandbox Code Playgroud)
但是,我注意到这导致我的服务器上出现大量重定向,因为当人们不添加/时,它会重定向它们.有没有办法让它接受两个没有重定向除了做:
# user home page
(r'^home$', 'user_home_page'),
(r'^home/$', 'user_home_page'),
Run Code Online (Sandbox Code Playgroud)
或者我应该避免像这样的URL混淆?
虽然您可以通过使用以下方式接受两者而无需重定向:
(r'^home/?$', 'user_home_page'),
Run Code Online (Sandbox Code Playgroud)
这不是最好的SEO练习,因为它看起来像你有重复的内容,你的命中将分为两页.
你可以修改你的APPEND_SLASH Django设置,我之前没用过它.
您可能想知道如果有人请求URL/hello(即没有尾部斜杠)会发生什么.因为我们的URL模式需要一个尾部斜杠,所以该URL不匹配.但是,默认情况下,任何与URL模式不匹配且不以斜杠结尾的URL请求都将重定向到带有斜杠的同一URL.(这由APPEND_SLASH Django设置规定,附录D中对此进行了规定.)
这取自http://djangobook.com/en/2.0/chapter03/
| 归档时间: |
|
| 查看次数: |
1700 次 |
| 最近记录: |