將Django部署到伺服器 下

2022-06-30 17:36:12 字數 3022 閱讀 6341

yum update -y

yum

-ygroupinstall

"development

tools"

安裝完成後記得建立軟連線,使其預設為預設使用。(此步驟詳細請參考

1、備份本地資料庫。使用sqlite資料庫的話,直接打包資料庫檔案上傳到伺服器即可。使用mysql資料庫,要先在本地mysql裡備份匯出資料,然後在伺服器上安裝mysql資料庫軟體,mysql安裝具體操作請看:

2、在專案目錄下用下面的命令把當前的環境依賴包匯出到requirements.txt檔案

pip freeze > requirements.txt

3、把專案原始碼壓縮打包。

4、把專案上傳到伺服器對應的目錄裡,解壓。

5、匯入資料庫到伺服器。(如果用的是mysql的話)

預設使用的是sqlite資料庫,就不用做此操作。資料庫原來是sqlite的,想換成mysql,請檢視文章:如何把sqlite資料庫轉換為mysql資料庫

如果是mysql資料庫的,則在命令列裡輸入:

#匯出mysql,django為你的資料庫

mysqldump -uroot -ppassword django>django.sql

#把django.sql上傳到伺服器,在伺服器裡用下面命令匯入

mysql -uroot -ppassword

use dajngo;

source your path\django.sql

1.然後進入/data/env/pyweb/bin

啟動虛擬環境:

留意我標記的位置,出現(pyweb),說明是成功進入虛擬環境。

2、通過python3 manage.py runserver 執行一下專案,如果能正常啟動則進行下一步,不能正常執行往上檢查。

1.ini格式的配置檔案

在專案檔案裡建立 uwsgi.ini 檔案,編輯檔案 ,設定uwsgi屬性

#新增配置選擇

[uwsgi]

#配置和nginx連線的socket連線

socket=127.0.0.1:8997

#配置專案路徑,專案的所在目錄

chdir=/data/wwwroot/mysite/

#配置wsgi介面模組檔案路徑,也就是wsgi.py這個檔案所在的目錄名

wsgi-file=mysite/wsgi.py

#配置啟動的程序數

processes=4

#配置每個程序的執行緒數

threads=2

#配置啟動管理主程序

master=true

#配置存放主程序的程序號檔案

pidfile=uwsgi.pid

#配置dump日誌記錄

daemonize=uwsgi.log`

通過下面的命令啟動執行uwsgi

uwsgi  --ini  uwsgi.ini

顯示 [uwsgi] getting ini configuration from uwsgi.ini 表明uwsgi執行成功

可能通過ps -ef|grep uwsgi   檢視確認是否uwsgi啟動.

#停止執行uwsgi,通過包含主程序編號的檔案設定停止專案

uwsgi --stop uwsgi.pid

#重啟uwsgi

uwsgi --reload uwsgi.pid

安裝nginx和配置nginx.conf檔案

進入home目錄,執行下面命令

cd /home/
wget
tar -zxvf nginx-1.13.7.tar.gz

進入解壓後的nginx-1.13.7資料夾,依次執行以下命令:

./configure

make

make install

nginx一般預設安裝好的路徑為/usr/local/nginx

在/usr/local/nginx/conf/中先備份一下nginx.conf檔案,以防意外。

cp nginx.conf nginx.conf.bak

然後開啟nginx.conf,把原來的內容刪除,直接加入以下內容:

要留意備註的地方,要和uwsgi配置檔案mysite.xml,還有專案路徑對應上。

進入/usr/local/nginx/sbin/目錄

執行./nginx -t命令先檢查配置檔案是否有錯,沒有錯就執行以下命令:

./nginx
之後,在settings.py裡設定:

1、關閉debug模式。

debug = false 

2、allowed_hosts設定為* 表示任何ip都可以訪問**。

allowed_hosts = ['*']

十五、訪問專案的頁面。

進入**專案目錄

cd /data/wwwroot/mysite/
執行下面命令(xml配置檔案為例):

uwsgi -x mysite.xml

以上步驟都沒有出錯的話。

進入/usr/local/nginx/sbin/目錄

執行:

./nginx -s reload
重啟nginx 。

然後在瀏覽器裡訪問你的專案位址!

成功訪問!

裡面最值得留意的就是專案的路徑不要弄錯,還有,專案的所有操作都要在虛擬環境下進行。

更詳細資料請參考:

將Django專案部署到伺服器上(上)

點選上圖所示按鈕後,新增規則 只需看下圖填兩個地方即可 下面是我新增好的效果 小編在這裡新增了常用的80 8080以及3306 點選後,在下圖彈出的視窗中設定密碼即可 改完記得重啟 成功登入遠端伺服器 檢視firewall服務狀態 檢視firewall的狀態 開啟firewalld.service服...

Django專案部署到伺服器

安裝 sudo apt install python3 pip sudo pip3 install virtualenv sudo apt install nginx sudo apt install mysql server 建立虛擬環境 在專案目錄下執行 home file virtualenv...

部署django到Linux伺服器上

scp xx username ip 傳送檔案到伺服器上 scp sychen blog.zip ubuntu 62.233.256.122 home sychen blog 建立虛擬環境 python m venv venv django blog 進入虛擬環境 source venv djang...