2010-01-17 1 views
2

Я нахожусь в Windows XP с последней версией Python 2.6 (и сервер разработки работает до прошлой ночи). У меня есть путь и весь путь к Python, и мой dev-сервер работал навсегда. Недавно я заменил свой django-trunk новым движением из ствола Django. Я подумал, что, возможно, была ошибка импорта или что-то, что Django не поймало в одном из моих моделей app.py, поэтому я начал новый проект (пустой, но только для тестирования), и он все еще не работал. Я перезапустил свой компьютер и снова попробовал новое пустое приложение python manage.py runserver 8080 и отправился в http://127.0.0.1:8080/, и он работал («Congrats. Django is insta ...»). Поэтому я записал свой реальный проект и снова попытался, и он не сработал. Я не получаю трассировку стека или что-то в этом роде. Я либо получаю [17/Ja/2010 16:30:51] "GET/HTTP/1.1" 301 0 как вывод, когда я посещаю http://127.0.0.1:8080/ в моем приглашении CMD, или я ничего не получаю (даже если я сильно обновляюсь и т. Д.). Что бы это могло быть?Django: Почему я не могу заставить свой сервер разработки работать?

Update (Важно):

Firefox говорит мне Firefox can't find the server at www.127.0.0.1., даже если я нахожусь в http://127.0.0.1:8080/. Означает ли это, что Django действительно отправляет 301 на www.127.0.0.1 по какой-то другой причине?

Я удалил PREPEND_WWW из settings.py и даже удалил все приложения (за исключением администраторов django и предустановленных), которые были установлены в settings.py.

Обновление 2: Работает в Safari! Как это может быть? Это похоже на то, что Firefox получает какой-то 301, но Safari работает отлично.

+0

Странно. Попробуйте запустить 'python manage.py runningerver 0.0.0.0: 8080'. Это сделает его доступным для всех возможных интерфейсов на этом компьютере, но если браузер и сервер находятся на одной машине, это не должно иметь никакого значения. –

+0

Включите Firebug. Он будет записывать 301, и вы сможете увидеть, что говорит вам django. – Seth

+0

Я предлагаю отредактировать заголовок, чтобы указать проблему prepend_www 301 – zalew

ответ

5

yep, 301 постоянное перенаправление запоминается firefox, я застрял один раз на этом, перезапустив или очистив историю/кеш, не помогло, поэтому я просто запустил его на другом порту.

редактировать после комментариев:

если вы используете некоторые localhost_settings.py для настройки вашего проекта на местном уровне и по-прежнему хотят www_redirect на сайте продукции:

try: 
    from localhost_settings import * 
    PREPEND_WWW = False 
except ImportError: 
    PREPEND_WWW = True 

я сделать это таким образом

+0

Святое дерьмо. Это кажется странным. Я не знаю, какую пользу будет помнить. Сохранить один запрос на сервер с риском разрушения сайта? Подумайте, есть ли у digg.com 301 в Twitter всего час в понедельник утром. Они навсегда потеряли около 10 процентов своего трафика :) – orokusaki

+0

u знаете, постоянное перенаправление должно быть постоянным, но я не знаю, почему очистка всего кеша FF не сбрасывает его (по крайней мере, это не сработало для меня тогда). настройка нового перенаправления отлично работает, поэтому не следует создавать мнимую проблему digg-> twitter (не говоря уже о том, что временные перенаправления не выполняются путем создания постоянной), не знаю, как ее решить с помощью django www перенаправлять. – zalew

+1

Я думаю, что очистка кеша причины не устраняет это потому, что по умолчанию Firefox «Очистить недавнюю историю» не очищает «Настройки сайта», поэтому вам нужно ее проверить. Это экономит намного больше информации о сайтах, включая уровень масштабирования сайта в последний раз, когда вы посещали (я вроде как слепой, поэтому я это заметил). – orokusaki