관리 메뉴

지나가는 이야기

[Flask] Error: Could not locate a Flask application. Use the 'flask --app' option, 'FLASK_APP' environment variable, or a 'wsgi.py' or 'app.py' file in the current directory. 오류 해결 본문

Development : 개발/Flask : 플라스크

[Flask] Error: Could not locate a Flask application. Use the 'flask --app' option, 'FLASK_APP' environment variable, or a 'wsgi.py' or 'app.py' file in the current directory. 오류 해결

지나가는 이야기 2023. 7. 14. 12:56
728x90
반응형

 

 

오류 원인

Error: Could not locate a Flask application. Use the 'flask --app' option, 'FLASK_APP' environment variable, or a 'wsgi.py' or 'app.py' file in the current directory.

Flask 개발을 많이 해보지 않거나 처음 접하는 사람들의 경우 위 오류 문구를 한 번쯤을 보았을 거다. 위 오류를 해결하는 방법에 대해 빠르게 알아보자.

먼저 오류가 발생하는 이유는 문구에서도 확인할 수 있듯이 flask run 명령어를 이용해서 flask 실행 시 주최가 되는 파일의 이름이 wsgi.py 또는 app.py가 아니기 때문이다. 이 문제를 해결하기 위한 방법은 크게 2가지가 있으며 추가적으로 디버깅모드 활성화 설정도 아래 글을 보면 된다.

 

 

 


 

 

해결 방법

# 방법 1

가장 간단한 방법으로 메인이 되는 파이썬 파일의 이름을 wsgi.py 또는 app.py로 변경하면 된다. 하지만 이 방법은 파일명을 고정해야 하기 때문에 그렇게 추천하지 않아 flask의 환경 변수를 수정하는 2번째 방법을 추천한다.

 

# 방법 2 *추천*

두 번째 방법은 환경변수를 명령어로 변경하는 것이다.

# export FLASK_APP=[확장자를 제외한 파이썬 파일명]
$ export FLASK_APP=test

export 명령어를 이용하여 flask run을 통해 실행하는 파일을 wsgi.py 또는 app.py에서 내가 원하는 파일로 변경가능하다. 위 명령어는 기본 파일을 test.py로 변경하는 내용의 명령어다.

 

 

디버깅 모드 설정

개발을 하다 보면 디버깅 모드를 활성화해야 하는 경우가 있다.

# export FLASK_DEBUG=[0 또는 1]
# 0은 비활성화 1은 활성화
$ export FLASK_DEBUG=1

디버깅 모드 역시 export 명령어를 통해 설정할 수 있다. 0의 경우 비활성화(기본값)이며 1로 설정화면 활성화 하는 것이다.

 

 

 

728x90
반응형
Comments