nginx + gunicorn + django的簡單部署

sudo apt-get install nginx

cd /etc/nginx/sites-available

sudo vim default

將配置文件修改成這樣的 注意本身修改下面的路徑python

server {
     listen 80;

     server_name server_name;
     access_log /home/virusdefender/Desktop/access.log;
     error_log /home/virusdefender/Desktop/error.log;

     location / {
         proxy_pass http://127.0.0.1:8020;
         proxy_set_header Host $host;
         proxy_set_header X-Real-IP $remote_addr;
         proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
     }
}
sudo nginx -t 測試配置文件

sudo nginx -s reload 重啓nginx

而後去代碼目錄運行python manage.py runserver 8020測試一下nginx

這個時候應該就能訪問到了django

而後運行sudo pip install gunicornvim

去配置gunicorn代替runserverapp

在django的settings INSTALLED_APPS裏面加上gunicornssh

在manage.py文件夾中運行測試

gunicorn ×××.wsgi:application -b 127.0.0.1:8020 --reload

×××是工程名字 也就是settings所在的目錄的名字
ip和端口要和上面的那個同樣code

這個時候應該就能夠了server

若是是ssh 鏈接 使用命令進程

nohup gunicorn ×××.wsgi:application -b 127.0.0.1:8011 --reload&

其實就是前面添加nohup 最後面加上&符號

進程操做的一點知識

中止進程操做 中止操做是經過向進程發送信號來進行的

步驟1:查詢進程的主進程號,以nginx爲例 ps -ef | grep nginx
在進程列表裏面找master進程,它的編號就是主進程號了。

步驟2:發送信號 從容中止Nginx: kill -QUIT 主進程號

快速中止Nginx: kill -TERM 主進程號

強制中止Nginx: pkill -9 nginx

平滑重啓 若是更改了配置就要重啓Nginx,要先關閉Nginx再打開?不是的,能夠向Nginx 發送信號,平滑重啓。

平滑重啓命令: kill -HUP 主進程號或進程號文件路徑 或者使用

sudo nginx -s reload

相關文章
相關標籤/搜索