2009-10-16 10 views
38

Mam widoku django, która zwraca HTTP 301 na zwinięcie żądanie:Django zwraca 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 

nie mogę dostać zawartości dla strony loków. Jeśli jednak odwiedzę stronę z przeglądarką, widzę zawartość zgodnie z oczekiwaniami.

Wszelkie pomysły?

Dzięki Pete

Odpowiedz

109

Prawdopodobnie żądania URL bez ukośnika i mają APPEND_SLASH ustawiona na true (domyślnie) w settings.py, więc Django jest przekierowanie do adresu URL w tym ukośnik.

+0

Dzięki, dokładnie w prawo !! – slypete

+2

miał dokładnie to samo – miki725

4

Mój problem był PREPEND_WWW, podczas używania go w localhost zwraca błąd 301, właśnie utworzony plik lokalne ustawienia i ustawić go PREPEND_WWW = False

0

W moim przypadku, komentując SecurityMiddleware plik settings.py załatwił sprawę. Muszę powiedzieć, że dzieje się tak tylko podczas uruchamiania polecenia runserver (również podczas testowania). Z Apache nie wpada w pętlę przekierowania.