PKSelect
  • Document
  • 프로젝트 개요
  • 프로젝트 준비
    • 개발환경 및 팀구성
    • 워크플로우
    • 사전조사 & 의사결정
      • 사전조사
      • 의사결정
        • 기능적 의사결정
        • 비기능적 의사결정
  • 프로젝트 설계
    • FRONTEND 설계 개요
      • FRONTEND 화면 흐름 및 동작
      • 콘텐츠 구성
        • Mainpage
        • Secondpage
      • 디자인 설계 의사결정
        • 디자인 컨셉 및 기능 정의
        • 컴포넌트 디자인
          • PC version
          • Mobile version
        • 로고결정
    • 시스템 구조 설계 개요
      • 시스템 흐름도 및 구조도
    • API Document
  • issue
    • FrontEnd
      • FrontEnd/Device classification issue
      • FrontEnd/cross browsing issue
    • BackEnd
      • BackEnd/lms_login_pw_issue
      • BackEnd/Circular Imports
    • Memo
  • 프로젝트 개발
    • FrontEnd
      • 페이지 UI
        • Mainpage
        • Loading page
        • SPA
        • Secondpage
          • Calendar
          • Table
            • 데이터 정렬
            • table
            • Button
              • 마감기한 지난 항목 삭제 <-> 확인 button
              • 과목 <-> 강의, 과제, 시험 button
              • 종강 D-day button
          • 피드백 이후 추가된 기능
      • 향후 개발 계획
    • BackEnd
      • Flask
        • PKSelecter/
        • controller/
        • app/
        • tests/
      • Server
        • AWS
        • Nginx + wsgi + Flask
        • (Sercurity) HTTPS
    • Prototype
  • 프로젝트 결과
    • 결과 보고
      • 개요
      • FrontEnd
      • BackEnd
      • PKSelect, Beta Service
      • 베타 서비스 설문조사
        • 서비스 사용성 평가
        • 베타 서비스 피드백
      • Google analytics 적용
      • 중간 발표 질문 정리
      • 최종 결과 보고
        • 피드백 적용 기능
Powered by GitBook
On this page
  • nginx uwsgi 설정 파일
  • 실행되는 순서는 다음과 같다.
  • Nginx 설정파일 (/etc/nginx/sites-available/myproject)
  • uwsgi 설정파일(uwsgi.ini)
  • Nginx -- uwsgi 연동을 위한 socket 파일
  • wsgi 모듈 ( 어플리케이션과 uwsgi를 연결시켜주기 위한 wsgi.py 파일 생성 )

Was this helpful?

  1. 프로젝트 개발
  2. BackEnd
  3. Server

Nginx + wsgi + Flask

참고 : https://velog.io/@wijihoon123/Nginx%EB%9E%80-%EB%AC%B4%EC%97%87%EC%9D%B8%EA%B0%80

PreviousAWSNext(Sercurity) HTTPS

Last updated 3 years ago

Was this helpful?

  • Nginx는 경량 웹 서버이. 클라이언트로부터 요청을 받았을 때 요청에 맞는 정적 파일을 응답해주는 HTTP Web Server로 활용되기도 한다.

  • Nginx는 Event-Driven 구조로 동작하기 때문에 고정된 프로세스만 생성하여 사용하고, 비동기 방식으로 요청들을 Concurrency 하게 처리할 수 있다.

UWSGI

uWSGI가 nginx와 Flask 앱 중간에서 미들웨어 역할을 하게 된다.

WSGI는 Web Server Gateway Interface의 약어로 웹서버와 웹 애플리케이션이 어떤 방식으로 통신하는가에 관한 인터페이스로써, 웹 서버와 웹어플리케이션 간의 소통을 정의해 애플리케이션과 서버가 독립적으로 운영될 수 있게 돕는다.

nginx uwsgi 설정 파일

  1. Flask 설정파일

2. 기반 웹 어플리이션

3. Flask 웹 어플리케이션

4. 어플리케이션과 uwsgi를 연결시켜주기 위한 wsgi.py 파일

5. nginx 설정파일과 uwsgi설정파일을 연결하기 위한 socket파일

실행되는 순서는 다음과 같다.

  1. 클라이언트가 요청을 보내면, 가장 먼저 Nginx가 받는다.

2. 그리고 unix 소켓을 통해 nginx와 uwsgi를 연결한다.

3. 위의 각 설정 파일 안의 소켓을 통해 연결된다.

4. -ginx와 uwsgi를 socket으로 연결해서 flask 앱이 실행되는 구조이다.

Nginx 설정파일 (/etc/nginx/sites-available/myproject)

uwsgi 설정파일(uwsgi.ini)

Nginx -- uwsgi 연동을 위한 socket 파일

# 처음 실행 시 (소켓생성) 
$ sudo service uwsgi retart 

# 설정사항 혹은 flask 웹 어플리케이션 소스 변경 후 적용 
$ sudo service uwsgi reload

wsgi 모듈 ( 어플리케이션과 uwsgi를 연결시켜주기 위한 wsgi.py 파일 생성 )

nginx + uwsgi + flask
myprject
access.log