2016-11-29 1 views
1

Я пытался развернуть мое приложение для фляжек на aws, используя их эластичную службу beanstalk, но мне не повезло. Я попытался переименовать приложение в приложение или импортировать в качестве приложения. Я попытался добавить разные вещи в httpf.conf. Но, не повезло.Сценарий истекал раньше, чем возвращал заголовки: application.py

Любые идеи?

Вот несколько примеров того, что я использую/работает.

[Tue Nov 29 04:36:57.477486 2016] [mpm_prefork:notice] [pid 28202] AH00169: caught SIGTERM, shutting down 
[Tue Nov 29 04:36:58.593231 2016] [suexec:notice] [pid 28480] AH: suEXEC mechanism enabled (wrapper: /usr/sbin/suexec) 
[Tue Nov 29 04:36:58.622166 2016] [so:warn] [pid 28480] AH01574: module wsgi_module is already loaded, skipping 
[Tue Nov 29 04:36:58.627404 2016] [auth_digest:notice] [pid 28480] AH01757: generating secret for digest authentication ... 
[Tue Nov 29 04:36:58.628967 2016] [lbmethod_heartbeat:notice] [pid 28480] AH02282: No slotmem from mod_heartmonitor 
[Tue Nov 29 04:36:58.664458 2016] [mpm_prefork:notice] [pid 28480] AH00163: Apache/2.4.23 (Amazon) mod_wsgi/3.5 Python/3.4.3 configured -- resuming normal operations 
[Tue Nov 29 04:36:58.667914 2016] [core:notice] [pid 28480] AH00094: Command line: '/usr/sbin/httpd -D FOREGROUND' 
[Tue Nov 29 04:37:02.142727 2016] [:error] [pid 28485] * Running on http://127.0.0.1:5000/ (Press CTRL+C to quit) 
[Tue Nov 29 04:38:05.392413 2016] [core:error] [pid 28509] [client 127.0.0.1:47208] Script timed out before returning headers: application.py 
[Tue Nov 29 04:38:09.386271 2016] [core:error] [pid 28508] [client 127.0.0.1:47210] Script timed out before returning headers: application.py 
[Tue Nov 29 04:38:13.392044 2016] [core:error] [pid 28506] [client 127.0.0.1:47212] Script timed out before returning headers: application.py 
[Tue Nov 29 04:39:04.713037 2016] [core:error] [pid 28532] [client 172.31.63.245:56919] Script timed out before returning headers: application.py 

application.py

from project_test import app as application 
from project_test.models import db 

project_test.__init__.py

from flask import Flask 
from datetime import timedelta 
from flask_mail import Message, Mail 

from flask_login import LoginManager 

from project_test.models import db, User 

import os 

mail = Mail() 
app = Flask(__name__) 

# app.config.from_object(os.environ['APP_SETTINGS']) 

app.config["APP_SETTINGS"] = "project_test.config.DevConfig" 
app.config.from_object(app.config["APP_SETTINGS"]) 

mail.init_app(app) 

app.permanent_session_lifetime = timedelta(seconds=900) 

login_manager = LoginManager() 
login_manager.init_app(app) 
login_manager.login_view = 'login' 
login_manager.login_message_category = "danger" 

@login_manager.user_loader 
def load_user(user_id): 
    return User.query.filter(User.id == int(user_id)).first() 

import project_test.views 

Спасибо!

ответ

2

Это потому, что где-то в вашем коде вы запускаете встроенный сервер разработчиков Flask. Это видно из сообщения:

Running on http://127.0.0.1:5000/ (Press CTRL+C to quit) 

Обычно это происходит потому, что app.run() вызывается, но это не очевидно, в том, что вы показали.

В любом случае, вы не должны запускать сервер разработки Flask как mod_wsgi под Apache, действуя как сервер WSGI.

+0

Это были эти строки, которые сделали это ... app.config ["APP_SETTINGS"] = "northtrack.config.DevConfig" app.config.from_object (app.config ["APP_SETTINGS"]). Благодаря! –

+1

Эти строки не должны запускать встроенный сервер разработчиков, который был проблемой, которую я выделял. Возможно, вы не перезапустили Apache после некоторого предварительного изменения, где вы удалили то, что вызывало его. –

+0

Вы правы. Я добавил эти строки после перезапуска apache, и это сработало. Это был app.run(), который делал это, но я никогда не перезапускал Apache. Еще раз спасибо! –

Смежные вопросы