gunicorn 과 nginx 포트 맵
3868 단어 web_learning
gunicorn 설치
pip install gunicorn
gunicorn 시작 항목
gunicorn module_name:variable_name
예:
gunicorn run:app
예: gunicorn -b 0.0.0.0:8000 run:app
이 ip 를 통 해 서버 에 접근 할 수 있 습 니 다.nginx 로 컬 80 포트 를 다른 포트 로 이동 합 니 다.
설치 nginx
sudo apt-get install nginx
리 트 윗 설정
nginx 의 기본 설치 경 로 는 / usr / local / nginx 에 있 습 니 다.
nginx 의 기본 설정 은 / etc / nginx 아래 에 있 습 니 다. (nginx. conf 는 이 아래 에 있 습 니 다)
80 포트 를 8080 포트 로 가리키다
nginx. conf \ # 이 파일 은 / etc / nginx 에 있 습 니 다. (맵 포트 추가)
주석 삭제 줄 바 꾸 기:
#nginx.conf http .
# server conf sites-available ,
# , .
#
# sites-enabled sites-available/default ,
# sites-available/default localhost ,
# nginx.conf . 404 .
# sites-enabled . .
#
include /etc/nginx/conf.d/*.conf;
#include /etc/nginx/sites-enabled/*;
http 설정 항목 에 다음 과 같은 내용 을 추가 합 니 다:
server {
listen 80;
server_name localhost;
location / {
proxy_pass http://localhost:8080;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Real-IP $remote_addr;
}
}
nginx 다시 시작
sudo service nginx restart // sudo nginx -s reload1
그리고 localhost / index. htm 를 통 해 8080 포트 의 프로젝트 를 직접 방문 할 수 있 습 니 다. 주의: 위의 두 개의 localhost 를 고 쳐 야 합 니 다.
제 첫 번 째 는 127.0.0.1 입 니 다.
두 번 째 는 0.0.0.0: 8000 (에이전트 의 주소) 입 니 다.
그리고 gunicorn - b 0.0.0.0: 8000 으로 프로젝트 를 엽 니 다.
이렇게 브 라 우 저 에서 항목 에 접근 하면 포트 번 호 를 사용 하지 않 습 니 다.
총결산
마지막 으로 이 몇 부분의 관 계 를 요약 한다.
(nginx 는 클 라 이언 트 로부터 요청 을 받 았 습 니 다. nginx 에서 설정 한 경로 에 따라 WSGI 에 전송 합 니 다) nginx: "WSGI, 찾 아 왔 습 니 다!"(WSGI 서버 는 WSGI 프로 토 콜 에 따라 요청 을 분석 하고 환경 변 수 를 설정 하 며 start response 방법 으로 fllask 프레임 워 크 를 호출 합 니 다) WSGI 서버: "fllask, 빨리 와 서 손님 을 받 아 라. 고객 자 료 는 내 가 모두 준비 해 놓 았 다!"(flask 는 env 환경 변수 에 따라 대응 하 는 처리 함 수 를 찾 아 html 생 성 을 요청 합 니 다) flask: "! @ \ # $% ^..."WSGI, html 문서 가 다 되 었 으 니 가 져 가세 요."(WSGI 는 html 를 받 고 env 변수 에 따라 http 응답 으로 조립 하여 nginx 에 보 냅 니 다) WSGI 서버: "nginx, 방금 누가 나 를 찾 았 지?"그 에 게 대답 하 세 요! @ # $% ^.....................................................(nginx 는 클 라 이언 트 에 응답 을 보 냅 니 다)
문제.
nginx 맵?구체 적 으로 그 실제 서버 중 어느 것 이 클 라 이언 트 입 니까?구체 적 절차
IP , IP , ( )
내 가 gunicorn 으로 항목 을 열 었 을 때, 어디 에 있 는 사용자 가 접근 할 수 있 습 니까? (랜 에 있 는 사용자 가 접근 할 수 있 습 니 다)