Bob's Blog

Web开发、测试框架、自动化平台、APP开发、机器学习等

返回上页首页

用Django做一个简单的记账网站(十一)部署到服务器



到现在已经做好了一个简单的记账网站了,接下来为了给自己使用,可以部署到服务器上,随时可以访问和记录。

我在阿里云租用了ECS,加上一个公网ip和一个域名,如果你暂时还没有的话,也可以在本地试试,通过本机ip来访问网站,因为只用django的runserver是不够的。

现在需要在ecs服务器上操作一下,我这里会用到uwsgi和nginx。一个处理动态请求,一个处理静态资源。对于uwsgi和nginx的作用也可以看看我之前写的另一篇:python做web开发时uWSGI和nginx的作用和区别

uwsgi在前面已经安装过了,nginx就看你是什么操作系统,比如centos可以用yum -y install nginx.

另外,除了uwsgi,也可以使用gunicorn:使用gunicorn+gevent+nginx

然后需要定义uwsgi的初始文件,添加一些最基础的配置:

[uwsgi]
socket = 127.0.0.1:8001
chdir = /path #项目目录路径
module = accounting.wsgi
master = true    #启用主进程
processes = 2  #进程数量
threads = 2    #线程数量
max-requests = 600    #每个工作进程支持的请求数
chmod-socket = 664    #socket权限设置
vacuum = true    #当服务停止的时候自动删除unix socket文件和pid文件
daemonize = /path/uwsgi.log    #log地址
pidfile = /path/uwsgi.pid    #pid地址
enable-threads=true    #如果需要线程发挥作用

对应的修改nginx.conf,添加如下内容:

server {
    ...
    location ~ /accounting {
        include uwsgi_params;
        uwsgi_pass 127.0.0.1:8001;
        uwsgi_param UWSGI_CHDIR /path;    #工作目录路径
    }

    location /static/ {
        alias /path;    #static目录路径
    }

    location /media/ {
        alias /path;    #media目录路径
    }
    ...
}

接下来需要启动uwsgi和重启nginx

uwsgi -i uwsgi.ini  #ini文件的路径
nginx -s  reload    #注意操作系统

此时访问你的ip或者访问你的域名,便可以看到记账网站的页面啦,可以试试记帐和看看图表。目前我已经搭建在自己的服务器上,用起来丝滑顺畅,感觉不错。

"用Django做一个简单的记账网站"这个系列的文章和网站到此就完成了,从头看完的朋友如果遇到问题也可以给我留言。

github地址是: 用Django做一个简单的记账网站

放上两张部署后的截图,当然打了码:

下一篇:  Mac上Redis的安装配置
上一篇:  用Django做一个简单的记账网站(十)生成图表

共有6条评论

添加评论

德尔先生
2024年12月7日 15:18
跟着你的项目学习了一遍,非常感谢你的分享
HP
2023年4月13日 09:12
那个config.json里面是要写什么吗
Larry
2023年4月5日 21:12
您好,我在运行后发生错误,能否帮助解决呢?相关信息已发送至您的邮箱bobjiang4321@gmail.com,感谢。
BlueCitizen
2023年3月5日 16:52
跟着您的文章过了一下搭建流程,中间有一些不完整的地方自己补充了,到最后才发现有仓库-_-总之学习了,感谢!
Bo
2021年3月8日 17:13
@getfeel 我用windows比较少,印象中nginx和apache都是可以在windows上用的
getfeel
2021年3月8日 17:08
请教,windows平台有什么开源的web服务器软件嘛?