Django部署在ubuntu上

一.安装Django
sudo apt install python3-pip    #安装pip
pip -v # 查看pip的版本
pip install django #默认安装最新的django版本

当然安装前需要更新一下系统的文件
sudo apt update

二.uwsgi
wsgi是python程序的一个网观点接口,用来实现web应用的;
uwsgi是一个python的web服务器,像是node自带的服务器一一样,像是php的fastcgi一样;

首先在ubuntu下载安装uwsgi:
sudo apt install build-essential python3-dev  #安装依赖项 pip install uwsgi
输入命令可以检查是否成功
uwsgi --version

三.安装nginx
1.下载 nginx_signing.key 文件
2.将nginx添加至ubuntu的配置源列表里面
sudo vim /etc/apt/sources.list
添加内容
deb http://nginx.org/packages/ubuntu/ xenial nginx
deb-src http://nginx.org/packages/ubuntu/ xenial nginx
3.更新系统并安装最新的nginx版本
sudo apt update sudo apt install nginx
5. 查看是否安装成功
nginx -v      
四.部署django应用
1.配置nginx配置文件配置转发请求
vim /etc/nginx/conf.d/nginx_uwsgi.conf
文件内容:
upstream django {
server unix:///home/controlsys/skweb/skweb.sock; #这个.sock文件不存在也没关系,启动的时候会自动创建
}
# 配置转发服务器
server {
# 应用监听端口
listen 8001;
# 允许访问的域名 没有域名的话就写服务器的公网ip地址
server_name 114.55.245.83; #这是我的一个django项目,域名为crawler.site,欢迎访问使用
charset utf-8;
#访问日志
access_log /home/controlsys/skweb/log/skweb_access.log;
#错误日志
error_log /home/controlsys/skweb/log/skweb_error.log;
# 最大上传文件大小
client_max_body_size 75M;
# 配置静态文件的请求
location /assets/ {
alias /home/controlsys/skweb/assets/; #项目静态文件地址,使用python3 manage.py collectstatic 将静态文件收集到settings.py文件配置的STATIC_ROOT目录下
}

# 配置django应用的转发请求
location / {
uwsgi_pass 114.55.245.83:8006; #这个必须和uwsgi.ini中配置的socket地址保持一致
include /etc/nginx/uwsgi_params; #这个uwsgi_params文件的地方,默认在/etc/nginx目录下随nginx一起被安装
uwsgi_read_timeout 2;
}
}

2.配置uwsgi启动文件(.ini格式的文件 以我的项目为例)
一般是将它放在django项目的根目录下面,这里假设文件名为uwsgi.ini(可自行定义)
uwsgi.ini 内容如下:
# 项目的uwsgi配置文件
[uwsgi]
# 这个必须要,因为在nginx中的 uwsgi_pass 127.0.0.1:8005
#这个通信端口就是这里明命名的,就是nginx和uwsgi通信的端口了理解成
socket = 114.55.245.83:8006
#如果用nginx的话,不一定用这个,因为这个是http访问的端口,用nginx访问了
http = 114.55.245.83:8005
#项目的路径
chdir = /home/controlsys/skweb/
#wsgi.py文件的路径
wsgi-file = /home/controlsys/skweb/skweb/wsgi.py

3.后台启动项目
uwsgi uwsgi.ini #在django项目的根目录下面
nohup uwsgi skweb_wsgi.ini & #后台启动项目
接下来重启nginx服务
sudo /etc/init.d/nginx restart
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值