康少帶你python項目從部署到上線雲服務器


首先,服務器要安裝nginx和mysql,網站文件建議放在/usr/local/www,環境python3.6+mysql5.7,阿里雲的服務器可以用公共鏡像有一個配置好的,不然就自己裝一下環境吧。

本項目名稱:loginOrRegister

對於小白來說首先我們需要干的一件事情就是安置與配置nginx下面就是nginx的配置

1.nginx配置

安裝nginx

# gcc 安裝
yum install gcc-c++

# PCRE pcre-devel 安裝
yum install -y pcre pcre-devel

# zlib 安裝
yum install -y zlib zlib-devel

# OpenSSL 安裝
yum install -y openssl openssl-devel

#進入指定目錄
cd /usr/local

#下載nginx包,如果沒有wget命令,就yum install wget安裝即可
wget -c https://nginx.org/download/nginx-1.10.1.tar.gz

# 解壓
tar -zxvf nginx-1.10.1.tar.gz

# 配置
cd nginx-1.10.1
./configure

# 編譯
make
make install

# 啟動,停止nginx
cd /usr/local/nginx/sbin/  # 執行文件在此處
./nginx   # 啟動
./nginx -s stop  # 停止
./nginx -s reload  # 重啟

# 查詢nginx進程
ps aux|grep nginx

注意配置文件位置,首先找到此文件

img

修改配置文件

worker_processes  1;

events {
    worker_connections  1024;
}

http {
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    keepalive_timeout  65;

    server {
    listen      80;  # 監聽端口,注意瀏覽器用的是80端口,你可以選擇8000也行,你隨意
    server_name yun-guo.top;  # 你的域名
    charset     utf-8;

    client_max_body_size 75M;


    location /static {  # django的項目靜態文件
        alias /usr/local/www/book/bookmanage/booksys/static;
        }

    location / {  # uwsgi部署django項目的端口
        uwsgi_pass  127.0.0.1:8001;
        include     /usr/local/nginx/conf/uwsgi_params;  # 找一找你的nginx下的uwsgi_param文件
        }
    }

}

然后cd /usr/local/nginx/sbin下,執行./nginx -t,檢測配置文件是否有錯誤,沒有的話執行./nginx,或者./nginx -s reload重啟nginx

2.項目文件

img

3.uwsgi配置

首先pip install uwsgi

安裝uwsgi

uwsgi可以用命令行帶參數執行,本次用配置文件執行,uwsgi.ini,文件放置在項目中即可,與manage.py的文件內。

img

uwsgi.ini的內容

[uwsgi]
chdir = /usr/local/www/wuliu  # 項目路徑,根目錄
module = wuliu.wsgi:application  # 改一下項目名即可

master = True
processes = 4
harakiri = 60
max=requests = 5000

socket = 127.0.0.1:8001  # 設置運行的端口,不要有沖突即可
uid =1000
gid = 2000

pidfile = /usr/local/www/uwsgi.pid
vacuum = True

到項目目錄下,執性uwsgi --ini uwsgi.ini,然后直接關掉窗口即可

4.注意事項

mysql用pycharm連接問題

可能被拒絕遠程,進行如下操作

如果想root用戶使用password從任何主機連接到mysql服務器的話。

先進入mysql命令行,然后執行

GRANT ALL PRIVILEGES ON . TO 'root'@'%' IDENTIFIED BY 'password' WITH GRANT OPTION;

注意這個password是你另設置的遠程連接密碼,與你服務器mysql密碼不是一個。這樣就能用pycharm直接操作服務器的mysql了

django項目依賴問題

自己改一下服務器端的django版本等,執行makemigrations和migrate出現的問題,自行看報錯,一般為依賴庫問題


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM