Приложение Flask на Elasticbeanstalk - «целевой сценарий WSGI не найден или не может выполнить статистику» - PullRequest
0 голосов
/ 28 сентября 2018

Я создал приложение с помощью Flask под названием app.py.Он запускается локально, когда я использую "колбу".Однако, когда я загружаю его в AWS Elasticbeanstalk, состояние среды меняется на «Серьезное», и в журналах появляется сообщение об ошибке «Целевой сценарий WSGI не найден или не может выполнить статистику».

Я решил проблему,и выложили решение ниже, если оно будет полезным для других.

1 Ответ

0 голосов
/ 28 сентября 2018

Приложение запускается локально, потому что я ранее выполнил команду "export FLASK_APP = app.py", чтобы изменить переменную среды.Это сообщает Flask, что мое приложение называется app.py.Однако в Elasticbeanstalk именем приложения по умолчанию является «application.py».Это можно увидеть, перейдя в Консоль AWS> Elasticbeanstalk> Ваша среда> Конфигурация> Программное обеспечение> Изменить> Параметры контейнера> Путь WSGI.

AWS Elasticbeanstalk Configuration

Тампоэтому это 2 решения.

  1. Переименуйте файл приложения из «app.py» в «application.py», чтобы он соответствовал пути WSGI по умолчанию в AWS Elasticbeanstal.

  2. Измените переменную среды WSGI Path на AWS Elasticbeanstalk на «app.py», чтобы она соответствовала имени файла вашего приложения.Это можно сделать одним из двух способов.Сначала через Консоль AWS> Elasticbeanstalk> Ваша среда> Конфигурация> Программное обеспечение> Изменить> Параметры контейнера> Изменить переменную пути WSGI> Применить.Во-вторых, используя интерфейс командной строки Elasticbeanstalk (EB CLI) с командой «eb config»> Прокрутите вниз до заголовка aws :asticbeanstalk: container: python:> Изменить WSGIPath> Сохранить изменения.

Если вы все еще получаете эту ошибку, также убедитесь, что файл вашего приложения находится в корневом каталоге.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...