Django: 400 Ошибка с Debug = False и ALLOWED_HOSTS =

Я пытаюсь запустить относительно простой сервер Django на python 3.5.3 на капельке Ubuntu DigitalOcean. Я использую сервер Gunicorn с nginx. Сервер работает нормально, когда DEBUG = True в settings.py. Но когда я устанавливаю его в False, я получаю ошибку 400 при попытке посетить страницу. Я попытался установить ALLOWED_HOSTS на [* *], но я все равно получаю ту же ошибку. Я просмотрел много форумов и много вопросов о SO, но ни одно из решений не сработало.

EDIT: журналы Gunicorn, начиная с запуска

[2016-09-13 00:02:01 +0000] [27160] [DEBUG] Current configuration: nworkers_changed: <function NumWorkersChanged.nworkers_changed at 0x7f9ac58d3d90> worker_class: sync pre_fork: <function Prefork.pre_fork at 0x7f9ac58c8f28> limit_request_fields: 100 statsd_host: None limit_request_field_size: 8190 default_proc_name: KivaWebsite.wsgi capture_output: False raw_env: [] pidfile: None pythonpath: None when_ready: <function WhenReady.when_ready at 0x7f9ac58c8d90> post_worker_init: <function PostWorkerInit.post_worker_init at 0x7f9ac58d32f0> pre_exec: <function PreExec.pre_exec at 0x7f9ac58d37b8> ca_certs: None syslog_prefix: None django_settings: None sendfile: None group: 0 limit_request_line: 4094 on_starting: <function OnStarting.on_starting at 0x7f9ac58c8a60> accesslog: None statsd_prefix: threads: 1 max_requests_jitter: 0 graceful_timeout: 30 cert_reqs: 0 proc_name: None spew: False loglevel: DEBUG pre_request: <function PreRequest.pre_request at 0x7f9ac58d3950> timeout: 30 worker_tmp_dir: None on_exit: <function OnExit.on_exit at 0x7f9ac58d3f28> tmp_upload_dir: None max_requests: 0 keepalive: 2 preload_app: False logger_class: gunicorn.glogging.Logger syslog_facility: user forwarded_allow_ips: ['127.0.0.1'] post_request: <function PostRequest.post_request at 0x7f9ac58d3a60> certfile: None bind: ['unix:/home/thomas/KivaWebsite/KivaWebsite.sock'] ssl_version: 3 access_log_format: %(h)s %(l)s %(u)s %(t)s "%(r)s" %(s)s %(b)s "%(f)s" "%(a)s" errorlog: logs2.log logconfig: None umask: 0 proxy_allow_ips: ['127.0.0.1'] reload: False check_config: False workers: 1 worker_connections: 1000 syslog_addr: udp://localhost:514 chdir: /home/thomas/KivaWebsite paste: None keyfile: None on_reload: <function OnReload.on_reload at 0x7f9ac58c8bf8> post_fork: <function Postfork.post_fork at 0x7f9ac58d3158> worker_int: <function WorkerInt.worker_int at 0x7f9ac58d3488> backlog: 2048 syslog: False worker_abort: <function WorkerAbort.worker_abort at 0x7f9ac58d3620> worker_exit: <function WorkerExit.worker_exit at 0x7f9ac58d3bf8> daemon: False user: 0 proxy_protocol: False config: None secure_scheme_headers: {'X-FORWARDED-SSL': 'on', 'X-FORWARDED-PROTO': 'https', 'X-FORWARDED-PROTOCOL': 'ssl'} suppress_ragged_eofs: True do_handshake_on_connect: False ciphers: TLSv1 enable_stdio_inheritance: False [2016-09-13 00:02:01 +0000] [27160] [INFO] Starting gunicorn 19.6.0 [2016-09-13 00:02:01 +0000] [27160] [DEBUG] Arbiter booted [2016-09-13 00:02:01 +0000] [27160] [INFO] Listening at: unix:/home/thomas/KivaWebsite/KivaWebsite.sock (27160) [2016-09-13 00:02:01 +0000] [27160] [INFO] Using worker: sync [2016-09-13 00:02:01 +0000] [27163] [INFO] Booting worker with pid: 27163 [2016-09-13 00:02:01 +0000] [27160] [DEBUG] 1 workers [2016-09-13 00:02:25 +0000] [27163] [DEBUG] GET / 

EDIT: журналы Nginx показывают ошибку:

 request: "GET / HTTP/1.1", upstream: "http://unix:/home/thomas/KivaWebsite/KivaWebsite.sock:/", host: "104.131.153.181" 2016/09/12 12:06:47 [crit] 22081#22081: *96 connect() to unix:/home/thomas/KivaWebsite/KivaWebsite.sock failed (2: No such file or directory) 

Тем не менее, я проверил и файл определенно существует. Это мой конфигурационный файл nginx:

 server { listen 80; server_name 104.131.153.181; location = /favicon.ico { access_log off; log_not_found off; } location /static/ { root /home/thomas/KivaWebsite; } location / { include proxy_params; proxy_set_header Host $host; proxy_pass http://unix:/home/thomas/KivaWebsite/KivaWebsite.sock; } } 

Что-то не так с этим?

One Solution collect form web for “Django: 400 Ошибка с Debug = False и ALLOWED_HOSTS =”

Убедитесь, что config в nginx имеет правильный псевдоним, используя абсолютные пути (например: /etc/nginx/sites-enabled ). Это не работает, если псевдоним был выполнен с относительным путем по любой причине.

Это соответствующие настройки для nginx в разделе location / {} :

 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Host $http_host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-Proto $scheme; proxy_redirect off; include uwsgi_params; proxy_pass http://unix:/home/thomas/KivaWebsite/KivaWebsite.sock; 
  • 'Недопустимый синтаксис ввода для типа inet' db error в приложении Django с postgres и Gunicorn + Nginx в качестве обратного прокси
  • X-Forwarded-Proto and Flask
  • Отслеживание приложений фляг не отображается в журнале сервера
  • Конфигурация Nginx для статических сайтов в корневом каталоге, Flask apps в подкаталогах
  • django-gunicorn-nginx: 502 плохой шлюз
  • nginx + uwsgi + колба - отключение пользовательских страниц ошибок
  • Конфигурация nginx + uwsgi + python3 не работает
  • где хранить статические файлы в приложении django, Как подключать статические файлы из нескольких местоположений от nginx
  • Различают nginx, haproxy, лак и uWSGI / Gunicorn
  • Haystack говорит: «Модель не найдена для SearchResult»
  • Запуск приложения с флягой с nginx и gunicorn
  •  
    Interesting Posts for Van-Lav

    Почему в Python asyncio возникает ошибка «Задача была уничтожена, но она ожидает»?

    Макс. Кол-во запросов

    Почему csvwriter.writerow () помещает запятую после каждого символа?

    Предпочтение Python XOR: побитовый оператор и логические операторы

    Как уменьшить размер файла изображения с помощью PIL

    Быстрый поиск координат максимального значения в гауссовском ядре

    Следующий шаг после PHP: Perl или Python?

    нахождение max в python в соответствии с определенным пользовательским критерием

    Что мне нужно сделать с помощью apify authentication api authentication перенаправления uri в Django?

    Почему «1.real» синтаксическая ошибка, но «1 .real» действительна в Python?

    Python – mysqlDB, результат sqlite в качестве словаря

    Одинарные и двойные кавычки в JSON

    Как я могу осмыслить предложение `else` петель Python?

    Python: как отсортировать алфавит в списке без сортировки?

    Как отобразить текст с разметкой HTML? (Я использую ckeditor)

    Python - лучший язык программирования в мире.