Linux 搭建Nginx+uWSGI+Django环境
安装环境
sudo apt-get install nginx
sudo apt install python3
sudo apt install python3-pip
使用 sudo pip3 install 安装 下面环境
pip3 install
uwsgi
Django
django-cors-headers # 跨域
mysqlclient # 连接MySQL
wechatpy[cryptography] #微信公众平台SDK
xlrd # 表格插件
然后在项目文件夹根目录执行下面命令,然后就可以在项目根目录下面找到后端的样式资源(static文件夹下)了
python3 manage.py collectstatic
环境配置
cd /etc/nginx/sites-enabled/
创建一个配置文件,如:demo,里面的内容如下,当前示例配置文件是前后端分离(Vue和Django):
server {
listen 80;
listen [::]:80; server_name demo.zhuchenglin.cn; # 后端Django的样式
location /static/admin/ {
expires 30d;
autoindex on;
add_header Cache-Control private;
alias /var/www/html/demo/back/static/admin/;
}
# 前端样式
location /static/ {
expires 30d;
autoindex on;
add_header Cache-Control private;
alias /var/www/html/demo/front/dist/static/; }
# 前端找到Vue的index.html
location /front/ {
alias /var/www/html/demo/front/dist/;
index index.html index.htm;
}
# 后端处理请求
location /{
include uwsgi_params;
uwsgi_pass 127.0.0.1:9000;
uwsgi_send_timeout 600;
uwsgi_connect_timeout 600;
uwsgi_read_timeout 1000; }
}
服务启动和关闭
启动uWSGI,--processes 后面的数字可以更改,代表开启进程的个数。
uwsgi --socket 127.0.0.1:9000 --chdir /var/www/html/demo/back --module back.wsgi:application --processes 1 --enable-threads
其他关于uwsgi的参数请见uwsgi官方文档
启动Nginx
sudo /usr/sbin/nginx
关闭uWSGI和Nginx
关闭uWSGI和Nginx都可以使用
ps -ef | grep uwsgi
ps -ef | grep nginx
然后使用 kill -3 进程id
nginx 命令
sudo /usr/sbin/nginx -t #检测配置文件是否有问题
sudo /usr/sbin/nginx -s stop # 快速关闭
sudo /usr/sbin/nginx -s quit # 从容关闭
sudo /usr/sbin/nginx -s reload
sudo /usr/sbin/nginx -s restart
这样就可以通过域名来访问Django项目了。
注:本文操作在ubuntu系统上进行的,在其他Linux系统上安装软件的命令可能不一样(比如Centos用yum)
如需转载请注明出处:https://www.cnblogs.com/zhuchenglin/p/10748904.html
Linux 搭建Nginx+uWSGI+Django环境的更多相关文章
- 安装Nginx+uWSGI+Django环境
Ubuntu Server 12.04 安装Nginx+uWSGI+Django环境 今天要介绍的是利用APT源直接apt-get install安装配置我们所需要的环境,首先按惯例先安装MySQL和 ...
- Nginx+uWSGI+Django环境配置
通常项目会部署在虚拟环境,虚拟环境的使用可以参考这里,点击前往 当然你也可以直接部署,这里不多说. 一.安装uWSGI 1.通过pip安装 pip install uwsgi 这里只说明了一种安装方式 ...
- 使用nginx+uwsgi+Django环境部署
环境准备 Python点这里 nginx点这里 uwsgi点这里
- Nginx+uWSGI+Django+Python+ MySQL 搭建可靠的Python Web服务器
一.安装所需工具 yum -y install gcc gcc-c++ rpm-build mysql* libtool-ltdl* libtool automake autoconf libtool ...
- nginx+uwsgi+django开发环境搭建
Nginx+uWSGI+Djangoi开发环境搭建 Django简介,环境搭建 uWSGI简介,安装与配置 Nginx安装与配置 Nginx+uWSGI+Django原理解析 1.django简介,环 ...
- Linux - nginx+uWSGI+django+virtualenv+supervisor发布web服务器
目录 Linux - nginx+uWSGI+django+virtualenv+supervisor发布web服务器 crm django项目部署流程 使用supervisro启动uwsgi,退出虚 ...
- debian完整部署 Nginx + uWSGI + Django
手工部署一个Django服务器真心不容易,需要安装很多东西.从头开始搭建服务器,主要是为了梳理一下后续开发中一般为碰到的平台部署.对后续问题的解决有一定帮助. 通常部署有2中方式: 一种是使用现成提供 ...
- nginx+uWSGI+django+virtualenv+supervisor发布web服务器
nginx+uWSGI+django+virtualenv+supervisor发布web服务器 导论 WSGI是Web服务器网关接口.它是一个规范,描述了Web服务器如何与Web应用程序通信,以 ...
- Nginx+uWSGI+Django部署web服务器
目录 Nginx+uWSGI+Django部署web服务器 环境说明 前言 搭建项目 Django部署 编辑luffy/luffy/settings.py 编辑luffy/app01/views.py ...
随机推荐
- Android 使用gradle版本冲突
gradle默认版本冲突解决策略:自动依赖最高版本jar包 修改默认解决策略,使之出现版本错误时报错 configurations.all{ resolutionStrategy{ failOnVer ...
- 使用Open Live Write发布CSDN博客
---安装open live write 1.序 在CSDN上发布博客相当麻烦,图片一张张的上传确实让人头大,虽然通过office也能发布博客,不过Open Live Write软件使用感觉更好. 2 ...
- vue搭建app, M端项目流程
思路:安装sass预处理嵌套css,flex布局,flexible手机淘宝适配和fastclick移动300s延迟 打开cmd,使用命令行 1.切换盘符:e: 2.使用vue建立一个项目,具体请看我的 ...
- TopN案例
准备三份数据 t1 2067 t2 2055 t3 2055 t4 1200 t5 2367 t6 255 t7 2555 t8 12100 t9 20647 t10 245 t11 205 t12 ...
- VS Code 1.28版本设置中文界面的方法
最近将vscode升级到1.28版本,发现升级后默认界面变成英文了,而且在按照网上的说法在locale.json设置locale: "zh-cn"也不起效,解决的解决方法很简单: ...
- bzoj 2741
题目描述:这里 一道非常好的题 由于强制在线,我们必须要用一些数据结构来处理 考虑分块:将整个序列分块,块内部分预处理,块外部分暴力处理 对于每个块,计算出以这个块的左端点为端点,向右枚举这个块以后的 ...
- 4.1 ORACLE DATAGUARD SWITCHOVER 步骤
验证主库是否能执行角色转换到备库 原主库执行 SQL> SELECT SWITCHOVER_STATUS FROM V$DATABASE; SWITCHOVER_STATUS --------- ...
- RabbitMQ 保证消息不丢失
参考:https://www.imooc.com/article/49814 发送消息的时候,加上messageId字段,数据库记录消息日志表 ,插入的时候为发送中 当收到消息的时候,更改为已发送 , ...
- Redis持久化persistence
一.前言 由于Redis的数据都存放在内存中,如果没有配置持久化,redis重启后数据就全丢失了,于是需要开启redis的持久化功能,将数据保存到磁盘上,当redis重启后,可以从磁盘中恢复数据. R ...
- Spring中@Autowired和@Resource两种自动装配的方法
@Autowired 默认按bean类型查找并注入,若此时有多个相同类型的bean时,按bean name查找则为:@Autowired @Qulifer(value=”bean名称”). @Reso ...