Django: 404 на каждый запрос

#python #django #http

#python #django #http

Вопрос:

У меня есть приложение Django 1.6.5, которое работает в моей среде разработки. Но при развертывании на рабочем сервере он выдает мне эту ошибку при каждом запросе:

ПРЕДУПРЕЖДЕНИЕ 2014-06-20 14:35:40,085 база не найдена: /

Не найдено: /

[20 / Июнь / 2014 14:35:40] «GET / HTTP / 1.1» 404 1600

И это происходит то же самое с каждым сопоставленным URL-адресом, который работает над разработкой:

ПРЕДУПРЕЖДЕНИЕ 2014-06-20 14:39:59,151 база не найдена: /vars

Не найдено: /vars

[20 / Июнь / 2014 14:39:59] «GET /vars HTTP / 1.1» 404 1608

Мой urls.py выглядит примерно так:

 urlpatterns = patterns('',
    url(r'^

Я буду признателен за любую помощь в этом. Я застрял здесь на несколько дней.

Большое спасибо.


Комментарии:

1. У вас есть другой settings.py для развития по сравнению с производством?

2. @MatthewFranglen Да. Я работаю в той же ветке git. Оба синхронизируются.

3. Я бы рекомендовал рассмотреть различия. Я обнаружил, что параметр ALLOWED_HOSTS может мешать производственным развертываниям. Просто предположение :)

4. Глупый вопрос, использует ли производственный сервер тот же стек, что и ваш сервер разработки?

5. @MatthewFranglen РАЗРЕШЕННЫЕ ХОСТЫ были бы подсказкой, но я все еще работаю в DEBUG=True и выполняю тесты, используя wget localhost:8000 с сервера.

Ответ №1:

Теперь я чувствую себя таким тупым.

Проблема заключалась в том, что у меня был get_list_or_404 в представлении индекса. И любой другой запрос был перенаправлен на индекс.

Странно то, что у меня есть DEBUG = True в моем файле настроек, и я не смог увидеть полный журнал ошибок в html, вместо этого просто 404.

Спасибо и с уважением.

, IndexView.as_view(), name='index'),
url(r'^facebook/', include('django_facebook.urls')),
url(r'^accounts/', include('django_facebook.auth_urls')),
url(r'^vars/', VarsView.as_view(), name='vars'),
url(r'^admin/', include(admin.site.urls)),
url(r'^main/', MainView.as_view(), name='main'),
url(r'^logout/', LogoutView.as_view(), name='logout'),
url(r'^about/', AboutView.as_view(), name='about'),
)
Я буду признателен за любую помощь в этом. Я застрял здесь на несколько дней.

Большое спасибо.

Комментарии:

1. У вас есть другой settings.py для развития по сравнению с производством?

2. @MatthewFranglen Да. Я работаю в той же ветке git. Оба синхронизируются.

3. Я бы рекомендовал рассмотреть различия. Я обнаружил, что параметр ALLOWED_HOSTS может мешать производственным развертываниям. Просто предположение 🙂

4. Глупый вопрос, использует ли производственный сервер тот же стек, что и ваш сервер разработки?

5. @MatthewFranglen РАЗРЕШЕННЫЕ ХОСТЫ были бы подсказкой, но я все еще работаю в DEBUG=True и выполняю тесты, используя wget localhost:8000 с сервера.

Ответ №1:

Теперь я чувствую себя таким тупым.

Проблема заключалась в том, что у меня был get_list_or_404 в представлении индекса. И любой другой запрос был перенаправлен на индекс.

Странно то, что у меня есть DEBUG = True в моем файле настроек, и я не смог увидеть полный журнал ошибок в html, вместо этого просто 404.

Спасибо и с уважением.