日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 人文社科 > 生活经验 >内容正文

生活经验

基于Centos搭建nginx+uwsgi运行django环境

發布時間:2023/11/27 生活经验 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 基于Centos搭建nginx+uwsgi运行django环境 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

環境:

CentOS 7

nginx/1.9.12

Python 2.7.5

一:安裝依賴包5

yum install zlib-devel bzip2-devel pcre-devel openssl-devel ncurses-devel 
sqlite-devel readline-devel tk-devel python-pip  -y

二:安裝uwsgi

uwsgi:https://pypi.python.org/pypi/uWSGIuwsgi參數詳解:http://uwsgi-docs.readthedocs.org/en/latest/Options.html pip install uwsgi uwsgi --version

三:測試uwsgi是否正常:

新建test.py文件,內容如下:def application(env, start_response):start_response('200 OK', [('Content-Type','text/html')]) return "liuyao" 然后在終端運行: uwsgi --http :8080 --wsgi-file test.py 在瀏覽器內輸入:http://127.0.0.1:8080, 看是否有“liuyao”輸出,若沒有輸出,請檢查你的安裝過程。

四:安裝django

pip install django測試django是否正常,運行:django-admin.py startproject newsite
cd newsite
python manage.py runserver 0.0.0.0:8000 在瀏覽器內輸入:http://127.0.0.1:8000,檢查django是否運行正常。

五:安裝nginx

1.下載
wget http://nginx.org/download/nginx-1.9.12.tar.gz
2.解壓
tar xf nginx-1.9.12.tar.gz cd nginx-1.9.12.tar.gz 3.編譯 ./configure --prefix=/usr/local/nginx-1.9.12 \ --with-http_stub_status_module \ --with-http_gzip_static_module 4.安裝 make && make install 注:您可自行改變參數設置,具體請上官網學習,如果已經存在nginx服務,那么此步可省略

六:配置uwsgi

uwsgi支持ini、xml等多種配置方式,但個人感覺ini更方便:

/ect/目錄下新建uwsgi.ini,添加如下配置:
[uwsgi]
socket = 127.0.0.1:9090 //運行端口號 master = true //主進程 vhost = true //多站模式 no-stie = true //多站模式時不設置入口模塊和文件 workers = 2 //子進程數 reload-mercy = 10 vacuum = true //退出、重啟時清理文件 max-requests = 1000 limit-as = 512 buffer-sizi = 30000 pidfile = /var/run/uwsgi.pid //pid文件,用于下面的腳本啟動、停止該進程 daemonize = /日志目錄/uwsgi.log 啟動方式: uwsgi /etc/uwsgi.ini

七:設置nginx

找到nginx的安裝目錄,打開conf/nginx.conf文件,修改server配置

server {listen       80;      //設置網站運行端口server_name  localhost;  location / {            include  uwsgi_params;uwsgi_pass  127.0.0.1:9090; //必須和uwsgi中的設置一致 uwsgi_param UWSGI_SCRIPT newsite.wsgi; //入口文件,即wsgi.py相對于項目根目錄的位置,“.”相當于一層目錄 uwsgi_param UWSGI_CHDIR /newsite; //項目根目錄, index index.html index.htm; client_max_body_size 35m; } }

注:
1.uwsgi腳本

請放在/etc/init.d/uwsgi 設置可執行

DESC="uwsgi daemon"
NAME=uwsgi
DAEMON=/usr/bin/uwsgi
CONFIGFILE=/etc/$NAME.ini
PIDFILE=/var/run/$NAME.pid
SCRIPTNAME=/etc/init.d/$NAME
set -e [ -x "$DAEMON" ] || exit 0 do_start() { $DAEMON $CONFIGFILE || echo -n "uwsgi running" } do_stop() { $DAEMON --stop $PIDFILE || echo -n "uwsgi not running" rm -f $PIDFILE echo "$DAEMON STOPED." } do_reload() { $DAEMON --reload $PIDFILE || echo -n "uwsgi can't reload" } do_status() { ps aux|grep $DAEMON } case "$1" in status) echo -en "Status $NAME: \n" do_status ;; start) echo -en "Starting $NAME: \n" do_start ;; stop) echo -en "Stopping $NAME: \n" do_stop ;; reload|graceful) echo -en "Reloading $NAME: \n" do_reload ;; *) echo "Usage: $SCRIPTNAME {start|stop|reload}" >&2 exit 3 ;; esac exit 0

八:測試

OK,一切配置完畢,在終端運行

/etc/init.d/uwsgi start
/usr/local/nginx/sbin/nginx -s reload 或者直接啟動在瀏覽器輸入:http://127.0.0.1,恭喜你可以看到django的“It work”了~

九:多站配置

使用多個uwsgi服務的方法來實現多個站點。

重復第六步,創建uwsgi9091.ini,并相應修改文件中的

socket = 127.0.0.1:9091
pidfile = /var/run/uwsgi9091.pid daemonize = /日志目錄/uwsgi9091.log

并且設置腳本 啟動服務

然后新建nginx的配置文件為:

server {listen  8000;server_name 127.0.0.1;location / {            include  uwsgi_params;uwsgi_pass  127.0.0.1:9091; uwsgi_param UWSGI_SCRIPT oldsite.wsgi; uwsgi_param UWSGI_CHDIR /web/oldsite; index index.html index.htm; } } 然后我們就可以通過http://127.0.0.1:8000來訪問新的網站。

轉載于:https://www.cnblogs.com/nulige/p/7802429.html

總結

以上是生活随笔為你收集整理的基于Centos搭建nginx+uwsgi运行django环境的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。