版本:Python-3.8.1 + Django-2.2 + 阿里云服務器 Ubuntu-16.04
在正式部署前,需要確認幾點:
服務器上已經安裝相應的 Python MySQL Nginx uWSGI 以及相應的python第三方庫
項目代碼在本地可以運行,并且已經上傳到服務器
收集靜態資源并導入項目包擴展文件(django項目收集靜態文件)
python運行界面、1. Nginx配置文件
看很多教程都是在 /etc/nginx 目錄下,在 nginx.conf 中進行配置。我配置的時候沒有采用這種方法,在 /etc/nginx/sites-available 新建一個配置文件 blog.conf (名字可隨意),寫入內容:
# 對所有訪問以 https:// 訪問
server {
listen 80;
server_name www.huanyy.cn;
SDKpython,rewrite ^(.*)$ https://www.huanyy.cn$1;
}
server {
listen 443;
server_name www.huanyy.cn;
charset utf-8;
python搭建服務器。# 配置SSL證書
ssl on;
ssl_certificate /etc/nginx/cert/huanyy.cn.pem; # 證書文件,在服務器的絕對路徑
ssl_certificate_key /etc/nginx/cert/huanyy.cn.key;
ssl_session_timeout 5m;
client_max_body_size 75M;
python django、# 收集靜態資源的路徑
location /static {
alias /home/newblog/static_collected;
}
# 用戶或后臺上傳的文件路徑
location /media {
python怎么用?alias /home/newblog/media;
}
# 其他路徑交給uwsgi處理
location / {
uwsgi_pass 127.0.0.1:8001;
include /etc/nginx/uwsgi_params;
阿里云服務器跑python。}
}
補充:
關于證書配置,在購買了阿里云服務器之后,可以申請免費的證書并下載。適用于Nginx的證書一般有兩個文件,.crt(或 .pem)和 .key ,將這兩個文件上傳到服務器, 然后將路徑寫為絕對路徑即可。
使用命令 ln -s /etc/nginx/sites-available/blog.conf /etc/nginx/sites-enabled/blog.conf,建立軟鏈接,只有在 sites-enabled 目錄下的配置文件才能夠真正被用戶訪問。但是你同樣可以將文件放在 sites-available 目錄下用來存檔或者生成鏈接。關于 sites-available 和sites-enabled 的區別可以參考:nginx 配置 nginx.conf 和sites-available中配置的區別 或者 nginx 配置詳解(新手必看)
2. uwsgi配置
python 服務端、在 /home 目錄下新建 blog_uwsgi 文件夾,用于存放 uwsgi 相關配置文件
創建 blog.ini 文件,內容如下:
[uwsgi]
# 項目路徑
chdir = /home/newblog/
# 項目中 wsgi.py 文件的位置
python服務器端開發?module = Myblog.wsgi:application
master = True
processes = 4
harakiri = 60
max-requests = 5000
# 此處的 socket 需要與上面 nginx 中 location 中的 uwsgi_pass 一致,并且需要保證服務器安全組配置中該端口開放
python代碼部署到服務器?socket = 127.0.0.1:8001
uid = 1000
gid = 2000
# 通過該文件重啟或停止 uwsgi 服務
pidfile = /home/blog_uwsgi/master.pid
# 日志文件,記錄錯誤信息
python可以直接運行嗎,daemonize = /home/blog_uwsgi/blog.log
vacuum = True
3. 常用命令
當以上配置完成后可以使用 uwsgi --ini /home/blog_uwsgi/blog.ini 啟動這個項目,可以在瀏覽器訪問到網站
# 重啟 nginx 服務
service nginx restart
python寫完了怎么運行?# 查看當前 nginx 狀態
nginx -t
# 查看當前 uwsgi 進程
ps -aux | grep uwsgi
# uwsgi 服務重啟(master.pid 為個人定義)
uwsgi --reload master.pid
python部署到服務器,# uwsgi 服務停止
uwsgi --stop master.pid
4.參考博客
完結撒花
磕磕絆絆終于把博客上線了,有小伙伴看到可以看看效果: 別看我只是一只羊
只是一個超級簡單的小項目,也沒有互動功能~想加個文章評論,奈何我前端代碼不會寫,做的框框太丑,為了不影響美觀刪掉了很多板塊。有交流的小伙伴可以通過郵箱和我獲得聯系,網站上的微信號是假的咯。。。前路漫漫,加油吧!
版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。
工作时间:8:00-18:00
客服电话
电子邮件
admin@qq.com
扫码二维码
获取最新动态