默認認為你已經成功部署了一個專案,想要繼續部署第二個專案
-
進入 Nginx 的組態檔目錄 / usr/local/nginx/conf/,然后新建一個目錄:mkdir vhost,之后在 vhost 目錄里建立兩個以. conf 后綴的檔案(有幾個專案就放幾個,檔案名任意),里面的內容如下:
server { listen 8798; # (需要自己改) 這個就是外網訪問專案的埠,不能和其他專案一樣,自己選擇使用哪個埠.需要在防火墻開放埠 server_name www.yuming.cn; charset utf-8; location / { include uwsgi_params; uwsgi_pass 127.0.0.1:8997; #(需要自己改) 端介面自己選擇,別沖突就行,而且下面的專案xml檔案里的埠要和這個一致,并且這個埠不能和其他專案的一樣,可能需要將防火墻開放這個新的埠號 uwsgi_param UWSGI_SCRIPT ***.wsgi; #(需要自己改) ***為專案中wsgi.py所在檔案夾名(就是seetings.py所在的檔案夾) 如mysite.uwsgi uwsgi_param UWSGI_CHDIR /改成/專案/路徑/; #(需要自己改) 專案檔案夾的決定路徑,即manage.py所在的檔案夾 如/data/wwwroot/mysite/ } location /static/ { alias /data/wwwroot/mysite/static/; # (需要自己改) 專案的static檔案夾路徑 } } -
/usr/local/nginx/conf / 目錄下的原來默認的 nginx.conf 檔案,先備份一下,然后把里面的代碼洗掉,修改成如下代碼:
events { worker_connections 1024; } http { include mime.types; default_type application/octet-stream; sendfile on; include /usr/local/nginx/conf/vhost/*.conf; # 只需要注意這里的nginx路徑和你的是否一樣,其他代碼不用改 server { listen 80 default_server; server_name _; return 404; } } -
新建立一個虛擬環境,把新專案上傳到到服務器,進入虛擬環境,在新的虛擬環境再裝一次 uwsgi,和安裝專案所需依賴包
-
在第二個專案根路徑創建search.xml組態檔,把以下代碼復制到檔案中(把1,2,3行改成你的)
<uwsgi> <socket>127.0.0.1:8997</socket><!-- 內部埠,自定義 --> <chdir>/data/wwwroot/***/</chdir><!-- 專案路徑 --> <module>***.wsgi</module> <processes>4</processes> <!-- 行程數 --> <daemonize>uwsgi.log</daemonize><!-- 日志檔案 --> </uwsgi> -
進入專案目錄啟動uwsgi
uwsgi -x search.xml 注意:如果報錯先結束uwsgi行程,再重啟啟動 killall -9 uwsgi -
啟動nginx
cd /usr/local/nginx/sbin && ./naginx 注意:如果報錯,先結束行程再啟動 killall -9 nginx
7.啟動第二個專案方法
進入第二個專案的虛擬環境,進入專案目錄,重復操作一次第5和6步驟,來啟動uwsgi和nginx,注意啟動uwsgi時組態檔就不是上個專案的search.xml了,是當前專案目錄下的你自己創建的xml檔案.
nginx可以直接復制代碼重啟運行,每個專案的nginx是通用的
問題排解
如果輸入ps -ef|grep uwsgi命令,顯示類似這樣
root 22654 22651 0 13:31 ? 00:00:00 uwsgi -x search.xml
root 22686 1 0 13:33 ? 00:00:00 uwsgi mysite.xml
最后有兩個組態檔 search.xml mysite.xml存在,那么恭喜你就是成功啟動了兩個uwsgi,應該就可以兩個專案同時訪問了如果沒有,檢查步驟是否出錯
可以在專案目錄下的uwsgi.log以及nginx目錄下的error.log查看錯誤資訊
參考
https://www.django.cn/article/show-4.html#banqian
https://blog.csdn.net/xiaoduu/article/details/107295789
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/321160.html
標籤:其他
