概述
版本:Python-3.8.1 + Django-2.2 + 阿里云服务器 Ubuntu-16.04
在正式部署前,需要确认几点:
服务器上已经安装相应的 Python MySQL Nginx uWSGI 以及相应的python第三方库
项目代码在本地可以运行,并且已经上传到服务器
收集静态资源并导入项目包扩展文件(django项目收集静态文件)
1. Nginx配置文件
看很多教程都是在 /etc/nginx 目录下,在 nginx.conf 中进行配置。我配置的时候没有采用这种方法,在 /etc/nginx/sites-available 新建一个配置文件 blog.conf (名字可随意),写入内容:
# 对所有访问以 https:// 访问
server {
listen 80;
server_name www.huanyy.cn;
rewrite ^(.*)$ https://www.huanyy.cn$1;
}
server {
listen 443;
server_name www.huanyy.cn;
charset utf-8;
# 配置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;
# 收集静态资源的路径
location /static {
alias /home/newblog/static_collected;
}
# 用户或后台上传的文件路径
location /media {
alias /home/newblog/media;
}
# 其他路径交给uwsgi处理
location / {
uwsgi_pass 127.0.0.1:8001;
include /etc/nginx/uwsgi_params;
}
}
补充:
关于证书配置,在购买了阿里云服务器之后,可以申请免费的证书并下载。适用于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配置
在 /home 目录下新建 blog_uwsgi 文件夹,用于存放 uwsgi 相关配置文件
创建 blog.ini 文件,内容如下:
[uwsgi]
# 项目路径
chdir = /home/newblog/
# 项目中 wsgi.py 文件的位置
module = Myblog.wsgi:application
master = True
processes = 4
harakiri = 60
max-requests = 5000
# 此处的 socket 需要与上面 nginx 中 location 中的 uwsgi_pass 一致,并且需要保证服务器安全组配置中该端口开放
socket = 127.0.0.1:8001
uid = 1000
gid = 2000
# 通过该文件重启或停止 uwsgi 服务
pidfile = /home/blog_uwsgi/master.pid
# 日志文件,记录错误信息
daemonize = /home/blog_uwsgi/blog.log
vacuum = True
3. 常用命令
当以上配置完成后可以使用 uwsgi --ini /home/blog_uwsgi/blog.ini 启动这个项目,可以在浏览器访问到网站
# 重启 nginx 服务
service nginx restart
# 查看当前 nginx 状态
nginx -t
# 查看当前 uwsgi 进程
ps -aux | grep uwsgi
# uwsgi 服务重启(master.pid 为个人定义)
uwsgi --reload master.pid
# uwsgi 服务停止
uwsgi --stop master.pid
4.参考博客
完结撒花
磕磕绊绊终于把博客上线了,有小伙伴看到可以看看效果: 别看我只是一只羊
只是一个超级简单的小项目,也没有互动功能~想加个文章评论,奈何我前端代码不会写,做的框框太丑,为了不影响美观删掉了很多板块。有交流的小伙伴可以通过邮箱和我获得联系,网站上的微信号是假的咯。。。前路漫漫,加油吧!
最后
以上就是含蓄月饼为你收集整理的阿里云运行python项目_荐个人博客开发-06:Nginx + uWSGI + Django项目部署到阿里云服务器运行...的全部内容,希望文章能够帮你解决阿里云运行python项目_荐个人博客开发-06:Nginx + uWSGI + Django项目部署到阿里云服务器运行...所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复