nginx + Uwsgi + Django 총괄 및 분석
12143 단어 nginx
참고:
1. uWSGI 의 세 가지: uWSGI 는 Nginx 와 함께 사용 합 니 다.
2. virtualEnv 와 Nginx + uwsgi 를 django 프로젝트 배치 에 사용 하 는 것 을 배 웁 니 다.
3. 메모 배치
4.nginx+uwsgi
5. 프로 그래 밍 소결
6. nginx + uwsgi + django + python 배치
최근 3 일간 Django + nginx + uwsgi + sqlite 3 에 배 치 된 아 리 클 라 우 드 서버 를 디 버 깅 하고 있 습 니 다. 시스템 은 ubuntu 이기 때문에 다운로드 하기 편 합 니 다. sudo spt - get 이면 됩 니 다.
그래서 요 며칠 동안 겪 었 던 문제 와 과정 을 포크 에서 내 려 오 면 아마 만 날 수 있 을 거 라 고 생각 했 어 요.
프로젝트 트 리 명령 이면 트 리 - L 2
├── manage.py ├── mysite │ ├── __init__.py │ ├── __init__.pyc │ ├── settings.py │ ├── settings.pyc │ ├── urls.py │ ├── urls.pyc │ ├── wsgi.py │ └── wsgi.pyc ├── uwsgi.xml └── app_name(weixin) ├── admin.py ├── build ├── __init__.py ├── models.py ├── templates ├── tests.py └── views.py
1.nginx
nginx 는 WEB 서버, 역방향 에이전트, 부하 균형 등 서비스 로 사용 할 수 있 습 니 다.제 가 이 걸 쓰 는 건 기본적으로 static file 을 처리 하기 위해 서 입 니 다.
/ etc / nginx / site - enables / 아래 에 파일 을 만 들 수 있 습 니 다.
- > run service nginx stop 에서 실행 되 는 기본 conf 이기 때 문 입 니 다.
즉 / etc / nginx / nginx. conf - > 이 파일 에서 / etc / nginx / site - enables / 아래 설정 과 / etc / nginx / nginx. d / 아래 설정 을 가 져 옵 니 다.
물론 run 에서 지정 한 설정 nginx - c 는 다음 과 같은 설정 을 할 수 있 습 니 다.
server {
listen 80;
server_name 10.1.6.79;
#server_name zoues.com www.zoues.com ;
access_log
/var/log/nginx/example_access
.log;
# log /etc/nginx/nginx.conf log log /var/log/nginx
error_log
/var/log/nginx/example_error
.log;
root
/var/www/example
;
location / {
uwsgi_pass 127.0.0.1:9001;
# uwsgi 2 socket-->unix ip
unix
include uwsgi_params;
#
#
uwsgi_param UWSGI_SCHEME $scheme;
#
uwsgi_param SERVER_SOFTWARE nginx/$nginx_version;
}
}
2. uwsgi 의 선택 django 특유 의 uwsgi 프로 토 콜 때문에 uwsgi 를 선택 한 것 도 도리 입 니 다.
uWSGI :
。
( apache2 mod_wsgi )。
app 。
( app )。
( , )
이 설정 의 관건 은 역시 매개 변수 에 대한 이해 입 니 다.
# Django 가 있 는 Python 버 전 을 기록 하고 다음 명령 을 통 해 uwsgi 의 기본 Python 버 전 으로 전환 합 니 다 (일반적으로 전환 할 필요 가 없습니다)
#nginx 에서 설정 한 uwsgipass
#python path 는 매우 중요 합 니 다. 여러 개 를 설정 할 수 있 는 것 은 아래 의 < script > 과 < module > 의 설정 을 찾 을 때 반드시 설정 한 python path 에 대응 해 야 합 니 다. 그리고 < script > 과 < module > 는 python 의 from * import * 와 일치 합 니 다.
\ # 물론 귀 찮 으 면 wsgi - file 로 가세 요. 끝까지 가세 요.
\ # 이것 은 로그 입 니 다. 쓰 는 것 이 좋 습 니 다.
이것 은 uwsgi - x xxx. xml 를 통 해 실행 하려 면 xml 모듈 이 필요 합 니 다.
다음은 ini 설정 입 니 다.
# uwsgi_XXX.ini file [uwsgi] # Django-related settings # the base directory (full path) chdir = /var/www/<project path> # Django's wsgi filemodule = <project name>.wsgi # the virtualenv (full path) home = <virtualenv path> # process-related settings # master master = true # maximum number of worker processes processes = 10 # the socket (use the full path to be safe socket = /var/www/<project path>/<project name>.sock # ... with appropriate permissions - may be needed # chmod-socket = 664 # clear environment on exit vacuum = true
daemonize = /var/log/uwsgi.log pidfile=/var/www/<project path>/uwsgi.pid
2: wsgi-file pythonpath
[uwsgi]
02
vhost
=
false
\ # 여러 항목 이 필요 할 때
03
plugins
=
python
04
socket
=
127.0
.
0.1
:
8077
05
master
=
true
06
enable
-
threads
=
true
07
workers
=
1
08
wsgi
-
file
=
/
root
/
nowamagic_venv
/
nowamagic_pj
/
nowamagic_pj
/
wsgi.py
09
virtualenv
=
/
root
/
nowamagic_venv
10
chdir
=
/
root
/
nowamagic_venv
/
nowamagic_pj
사용 가능 한 명령
1. uWSGI 닫 기:
1
killall -9 uwsgi
2
killall -s HUP /var/www/uwsgi
3
killall -s HUP /usr/
local
/bin/uwsgi
2. 포트 점용 상황 보 여주 기:
1
netstat
-lpnt
이 내용 들 이 요 며칠 짜 리 인 데 사이트 등록 이 너무 길 어 요. 천천히 기다 리 세 요. 이 건 좀 놔 두 셔 도 돼 요.
논문 을 써 서 그 새 프로젝트 를 간장 을 너무 많이 쳐 서 정말...
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
간단! Certbot을 사용하여 웹 사이트를 SSL(HTTPS)화하는 방법초보자가 인프라 주위를 정돈하는 것은 매우 어렵습니다. 이번은 사이트를 간단하게 SSL화(HTTP에서 HTTPS통신)로 변경하는 방법을 소개합니다! 이번에는 소프트웨어 시스템 Nginx CentOS7 의 환경에서 S...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.