安装nginx
1.安装nginx的相关依赖
sudo apt-get install libpcre3-dev gcc zlib1g-dev build-essential
2.使用apt-get安装nginx
sudo apt-get install nginx
3.启动你的nginx
sudo service nginx restart
在你浏览器的地址栏输入你的ip地址
出现Welcome to nginx!的页面说明安装成功
安装uwsgi
1.使用pip安装uwsgi
pip install uwsgi
2.测试是否可以使用uwsgi启动你的django项目
uwsgi
如果出现
*** Starting uWSGI 2.0.17.1 (64bit) on [Sat Sep 8 16:21:13 2018] ***
compiled with version: 5.4.0 20160609 on 08 September 2018 08:06:11
os: Linux-4.13.0-41-generic
nodename: instance-6qytbj6i
machine: x86_64
clock source: unix
pcre jit disabled
detected number of CPU cores: 1
类似的进程,则表示uwsgi安装成功,并且可以启动你的django项目
3.使用uwsgi后台运行django项目
uwsgi
4.关闭uwsgi启动的项目的方法
sudo lsof -i:8000
然后kill -9 PID号
结束相应进程
使用nginx反向代理运行django项目
nginx配置文件结构
简单说明nginx配置文件结构
├── conf.d
├── nginx.conf
├── sites-availablesites-available
│ └── default
├── sites-enabled
│ └── default -> /etc/nginx/sites-available/default
nginx下的配置文件中有这样两个包含
include /etc/nginx/conf.d/*.conf;
include /etc/nginx/sites-enabled/*;
表示它的配置文件可以从conf.d
nginx反向代理运行django项目
开始部署我们的项目吧,由于我们使用apt-get安装,默认的nginx配置文件在/etc/nginx
1.切换到sites-available下
cd /etc/nginx/sites-available
2.建立一个属于你项目的配置文件
这里我的项目名是todolist,为了方便管理,我在sites-available下建立一个名为todolist的配置文件
sudo vim todolist
配置如下
server{
listen 80;
server_name 127.0.0.1;
location / {
include /etc/nginx/uwsgi_params;
proxy_pass http:
}
}
监听80端口
服务名可以改成你的域名
nginx 反向代理就是访问你的ip时,会自动转向proxy_pass,即转到django的8000端口
3.切换到sites-enabled下
cd /etc/nginx/sites-enabled
4.将原来的那个软链接删除(不要舍不得删,它指向的是那个默认的nginx注册成功页面,并且如果你还想要,可以随时建立软链接,毕竟sites-enabled中的那个默认配置还在,这两个是一样的)
sudo rm -rf default
5.建立软连接
sudo ln -s /etc/nginx/sites-available/todolist /etc/nginx/sites-enabled
6.重启nginx
sudo service nginx restart
7.在浏览器地址栏里输入ip,不需要加端口,也能访问到你的django项目