Django+nginx+uwsgi网站部署在Ubuntu服务器

2020-07-13 02:07:13 执剑追风 152 服务部署 / Ubuntu

非常适合新手的部署方案,通过最简单化操作完成Django项目在阿里云Ubuntu服器上运行,使用Nginx和uwsgi作为运行环境。

一、Nginx安装

sudo apt-get install nginx


二、uWSGI安装

sudo apt-get install uwsgi


三、Nginx配置

接下来配置Nginx 和uWSG部署Django App了。首先我们在Nginx中新建一个站点配置文件:

进入 nginx的站点列表目录

cd /etc/nginx/sites-enabled

然后新建一个站点配置文件

sudo vi mywebsite.com

编辑以下内容:

server{
	listen 80;
	server_name www.mywebsite.com;
	access_log /var/log/nginx/mywebsite.com-access.log;
	error_log /var/log/nginx/mywebsite.com-error.log;
	location / {
		uwsgi_pass 127.0.0.1:8630;
		include uwsgi_params;
	}
}


将刚建立的站点配置文件链接到Nginx配置文件中

sudo ln -s /etc/nginx/sites-enabled/mywebsite.com /etc/nginx/conf.d/


重启Ngninx

sudo /etc/init.d/nginx restart


四、配置uWSGI

在项目根本下创建一个ini配置文件,内容如下:

[uwsgi]
Socket = 127.0.0.1:8630							#端口与刚建立nginx中的一致
Chdir = /home/website/mywebsite/			#Django项目所在路径
Wsgi-file = mywebsite/wsgi.py				#项目下面的wsgi.py网关,默认为Django生成,无需做任何修改
Processes = 4
Threads = 2
Stats = 127.0.0.1:9191


五、启动项目

进入Django所在目录

uwsgi mywebsite.ini&


六、模块化思想:

nginx多站点配置结构,以项目名称创建配置文件放到 /etc/nginx/sites-enabled/ 下面,如:/etc/nginx/sites-enabled/my_project_name

Wsgi的配置文件放置在: /home/website/my_project_name/my_project_name.ini