首页 文章

这些Django文档的含义是:“如果DEBUG设置为False,则所有响应都将为”Bad Request(400)“

提问于
浏览
0

If DEBUG is set to False, all responses will be “Bad Request (400)”

如果将Debug设置为false并且您没有视图模板,它们是否意味着这个?
https://docs.djangoproject.com/en/1.5/intro/tutorial03/

This is the context: 您通常不必费心写404视图 . 如果未设置handler404,则默认使用内置视图django.views.defaults.page_not_found() . (可选)您可以在模板目录的根目录中创建404.html模板 . 当DEBUG设置为False时(在您的设置模块中),默认的404视图将使用该模板来处理所有404错误 . 如果您确实创建了模板,请至少添加一些虚拟内容,例如“找不到页面” .

警告如果DEBUG设置为False,则除非您指定正确的ALLOWED_HOSTS(类似[localhost','127.0.0.1']进行本地开发),否则所有响应都将为“Bad Request(400)” . 关于404次观看还有几点需要注意:

如果将DEBUG设置为True(在您的设置模块中),那么将永远不会使用您的404视图(因此永远不会呈现404.html模板),因为将显示回溯 . 如果在检查URLconf中的每个正则表达式后Django没有找到匹配项,也会调用404视图 .

2 回答

  • 1

    这意味着如果debug设置为true,您将只看到用于调试的回溯 .

    如果将debug设置为false以呈现404视图,则需要在 yoursite.settings 中配置ALLOWED_HOSTS设置,就像本地开发中的['localhost','127.0.0.1']一样 . 当然,为了渲染404,你必须在yourapp.views中指定它...

  • 2

    https://docs.djangoproject.com/en/1.6/ref/settings/#allowed-hosts

    例:

    ALLOWED_HOSTS = [
        '.example.com', # Allow domain and subdomains
        '.example.com.', # Also allow FQDN and subdomains
    ]
    

    要么:

    ALLOWED_HOSTS = '*'
    

相关问题