Django返回HTTP 301?

我有一个Django视图,返回一个curl请求上的HTTP 301:

grapefruit:~ pete$ curl -I http://someurl HTTP/1.1 301 MOVED PERMANENTLY Date: Fri, 16 Oct 2009 19:01:08 GMT Server: Apache/2.2.9 (Win32) mod_wsgi/2.5 Python/2.6.2 PHP/5.2.6 Location: http://someurl Content-Type: text/html; charset=utf-8 

我无法从curl中获取页面的内容。 但是,如果我使用浏览器访问该页面,则会看到预期的内容。

有任何想法吗?

谢谢,皮特

您可能正在请求没有结尾斜杠的URL,并在APPEND_SLASH设置为True(默认值),因此Django正在redirect到包含斜杠的URL。

我的问题是PREPEND_WWW,在localhost中使用它时会返回一个301错误,我刚刚创build了一个本地设置文件并将其设置为PREPEND_WWW = False

在我的情况下,在settings.py文件中对SecurityMiddleware进行评论的确有窍门。 我不得不说,只有在运行runserver命令时(也就是testing时)才会发生这种情况。 使用Apache它不属于redirect循环。