簡體   English   中英

Flask-嘗試配置應用時出錯

[英]Flask - getting error when trying to config an app

我有以下目錄結構:

app.py
config
    __init__.py
    settings.py
instance
    __init__.py
    settings.py

app.py看起來像這樣:

app = Flask(__name__)

debug_toolbar = DebugToolbarExtension()
mail = Mail()
csrf = CsrfProtect()

app.config.from_object('config.settings')
app.config.from_pyfile('settings.py', silent=True)

@app.route('/')
def hello_world():
    return "hey"

debug_toolbar.init_app(app)
mail.init_app(app)
csrf.init_app(app)

app.run(port=8000)

我在兩個文件夾中的settings.py文件如下所示:

DEBUG = False

SERVER_NAME = 'localhost:8000'
SECRET_KEY = 'insecurekeyfordev'

# Flask-Mail.
MAIL_DEFAULT_SENDER = 'contact@local.host'
MAIL_SERVER = 'smtp.gmail.com'
MAIL_PORT = 587
MAIL_USE_TLS = True
MAIL_USE_SSL = False
MAIL_USERNAME = 'you@gmail.com'
MAIL_PASSWORD = 'awesomepassword'

# Celery.
CELERY_BROKER_URL = 'redis://:devpassword@redis:6379/0'
CELERY_RESULT_BACKEND = 'redis://:devpassword@redis:6379/0'
CELERY_ACCEPT_CONTENT = ['json']
CELERY_TASK_SERIALIZER = 'json'
CELERY_RESULT_SERIALIZER = 'json'
CELERY_REDIS_MAX_CONNECTIONS = 5

如果刪除了2線app.py是采取配置的照顧,我的應用程序工作正常,我也得到hey ,當我嘗試訪問127.0.0.1:8000

如果我將這些行保留在文件中,則嘗試訪問該地址時會收到404錯誤。

可能是什么問題呢?

您正在將SERVER_NAME設置為localhost:8000 ,但實際上嘗試通過127.0.0.1訪問它。

因此,請在您的配置中注釋掉SERVER_NAME變量。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM