CommandError: DEBUG False ise ayarları yapmalısınız. ALLOWED_HOSTS


109

Django 1.6.5'i program txsite'de şu ayarlarla kullanıyorum:

DEBUG = True

DEBUG'ı False olarak ayarladım, ancak olduğumda runserveraşağıdaki hatayı alıyorum:

CommandError: You must set settings.ALLOWED_HOSTS if DEBUG is False

Ayarlamayı denedim ALLOWED_HOSTS = ['127.0.0.1', 'localhost']ama aynı hatayı alıyorum.

bunu nasıl çözeceğini bilen var mı?


Aşağıda yeniden DEBUG = True tanımladığınızı kontrol edin. Kötü bir kopya olabilir. Buraya geldim çünkü DEBUG = Yanlışlıkla iptal ettim
Tms91

Yanıtlar:


154

Deneyin

ALLOWED_HOSTS = ['*']

Güvenlik duvarı kapalı veya genel bir LAN üzerinde değilseniz daha az güvenlidir, ancak kullandığım şey bu ve işe yarıyor.

DÜZENLEME: İlginçtir ki, bunu 1.8 projemden birkaçına eklemeye ihtiyacım vardı DEBUG = True. Neden olduğundan emin değilim.

DÜZENLEME: Bu, yorumumda belirtildiği gibi bir Django güvenlik güncellemesinden kaynaklanmaktadır.


Kodu boşa harcamamak için kodu nereye doğru yerleştirmeliyim?
Малъ Скрылевъ

4
Do grep ALLOWED_HOSTS . -ridoğru dosyayı bulmak için projenizin kafası klasöründe. Bu durumda, settings.py'dir, ancak grepping her zaman iyi bir tavsiyedir.
Harald Nordgren

bunu hangi dosyaya yazmalıyım?
Mona Jalal

@MonaJalal lütfen Harald'ın yorumuna bakın.
Kye Russell

1
[Django docs] [1] 'e göre, davranışı ALLOWED_HOSTSbir DNS yeniden bağlama saldırısını ele alacak şekilde değiştirildi ve bu muhtemelen ileriye dönük olarak gerekli. [1]: docs.djangoproject.com/en/1.10/ref/settings/#allowed-hosts
Kye Russell

55

Çözümünüz, orijinal IP ve / veya ana bilgisayar adını da eklemek olabilir:

ALLOWED_HOSTS = ['localhost', '127.0.0.1', '111.222.333.444', 'mywebsite.com']

Yerine getirilmesi için koşul konak başlığı (ya olmasıdır X-Forwarded-Hosteğer USE_X_FORWARDED_HOSTetkindir) değerlerden biri aynı olmalıdır ALLOWED_HOSTS.


2
Bunu yapılandırdıktan sonra, eski güzel yeniden başlatma benim için çalıştı ...
Razaman

28

Ayarlarınızın tekrar tanımlanmadığından emin olun. Varsayılan ayarlar şunlardır:

ALLOWED_HOSTS = []


1
Hata mesajı, birini bunu aramaktan uzaklaştırır. Gönderdiğiniz için teşekkürler.
scharfmn



1

Eğer çalışıyorsanız PyCharm, Environmental variablessizin için kontrol edin Django server. Uygun module.settingsdosyayı belirtmelisiniz


0

Deneyin

# SECURITY WARNING: don't run with debug turned on in production!
DEBUG = True

ALLOWED_HOSTS = ['*']

'*' Değeri herhangi bir şeyle eşleşir; bu durumda, Ana Bilgisayar başlığı için kendi doğrulamanızı sağlamaktan sorumlusunuz.


-8

Sadece satırı yorumlayın: ALLOWED_HOSTS = [...]


Yorum yaparsanız, nereye yönlendirileceğini nasıl bileceksiniz?
cdrrr
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.