我只是在Apache和mod_wsgi的生产环境中设置我的django。一切似乎都很好。我已授予对静态文件夹(对于管理资源)的访问权限,并且服务器正在按预期工作。
在尝试查看不通过Django匹配网页的网页时,似乎有一个奇怪的事情。当达到这个明显的404时(我暂时打开了DEBUG)。
此问题源于我希望在静态文件夹中禁用目录列表。
我添加了Options -Indexes参数,它似乎有效。
唯一的问题是apache重写引擎似乎,当它找不到资源(或资源是文件夹)时,它会将404.shtml附加到URL。但追加并不是一个正确的词。相反,它用404.shtml替换请求URL的最后9个字符。然后我的Django 404调试屏幕出现了,这是我原始请求的荒谬版本。
以下是一个例子:
请求网址: http://mobile.mywebsite.com/static/unknown_file
Django收到:
找不到页面(404) 请求方法:GET 请求网址:http://mobile.mywebsite.com/static/un/404.shtml
然而,如果我要求 http://mobile.mywebsite.com/static/404.shtml
然后它会被相同的文字覆盖,所以显示http://mobile.mywebsite.com/static/404.shtml,显然没有变化。
有什么想法吗?
答案 0 :(得分:0)
听起来您在apache配置中定义了自定义http文档,例如:
ErrorDocument 404 /un/404.shtml