[linux]centos7.4部署django+Uwsgi+Nginx
前言:我已经写了几个接口用来部署在服务器上的,首先选择django+Uwsgi+Nginx因为配置简单,比较符合python的简单操作功能强大的特点
然后对于django的一些版本在之前的文章写了 参考:https://www.cnblogs.com/Jack-cx/p/9351633.html 根据版本,服务器pip3 install xxx 安装下
我的django项目大概结构:
TestWebApi
----TestWebApi
----Apiso(创建的应用)
----manage.py
1.关闭debug
这时候算是部署正式环境,首先得把debug给关掉,参考之前写的一篇:https://www.cnblogs.com/Jack-cx/p/9348326.html,设置下debug,包含了域名、外网的访问,
另外数据库配置自己根据实际情况修改~
2.尝试启动下,
cd /项目下
python manage.py runserver ip:port
这里有个坑,可能会报错 没有ssl库
rpm -aq|grep openssl #查看有没有包在服务器
查看结果-这个是正常有的
[root@s011805161450 ~]# rpm -aq|grep openssl
openssl-1.0.1e-48.el6_8.1.x86_64
openssl-devel-1.0.1e-48.el6_8.1.x86_64
没有则安装
# yum install openssl-devel -y
# yum install openssl
vi /usr/local/python36/Modules/Setup
#修改Setup文件
#修改结果如下:
# Socket module helper for socket(2)
_socket socketmodule.c timemodule.c
# Socket module helper for SSL support; you must comment out the other
# socket line above, and possibly edit the SSL variable:
#SSL=/usr/local/ssl
_ssl _ssl.c \
-DUSE_SSL -I$(SSL)/include -I$(SSL)/include/openssl \
-L$(SSL)/lib -lssl -lcrypto
:wq!
重新编译
cd /usr/local/python36/
make && make install
验证
>>> import _ssl
>>> exit()
这时候在启动项目,OK了~
3.既然启动ok了,那么配置下uwsgi
直接安装即可
pip3 install uwsgi
创建配置文件
vi /etc/uwsgi.ini
[uwsgi]
# Django-related settings
socket = :8100
#端口
# Django项目目录
chdir = /opt/devpython/TestWebApi
# wsgi.py,直接写个项目名.wsgi就可以了
module = TestWebApi.wsgi
# process-related settings
# master
master = true
# 进程数
processes = 4
# ... with appropriate permissions - may be needed
# chmod-socket = 664
# clear environment on exit
vacuum = true
daemonize = /var/log/TestWebApi.log #注意如果没有log就不在后台运行了
这样就完了
启动试下,
uwsgi --ini /etc/uwsgi.ini
查看进程
ps -ef |grep uwsgi
root 1498 1 0 Jul21 ? 00:00:07 uwsgi --ini /etc/uwsgi.ini
root 1500 1498 0 Jul21 ? 00:00:01 uwsgi --ini /etc/uwsgi.ini
root 1501 1498 0 Jul21 ? 00:00:00 uwsgi --ini /etc/uwsgi.ini
root 1502 1498 0 Jul21 ? 00:00:00 uwsgi --ini /etc/uwsgi.ini
root 1503 1498 0 Jul21 ? 00:00:00 uwsgi --ini /etc/uwsgi.ini
root 4992 4912 0 22:14 pts/1 00:00:00 grep --color=auto uwsgi
这样说明成功了~~
4.最后一步配置nginx
vi /opt/nginx/conf/nginx.conf
server {
listen 80;
server_name www.ba.com; #配置域名,不配置写个localhost就可以了
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
root html;
index index.html index.htm;
include uwsgi_params;
uwsgi_pass 内网ip:端口 #uwsgi配置的端口号
uwsgi_read_timeout 30;
}
刚才uwsgi启动成功了,这会启动nginx
./opt/nginx/sbin/nginx
查看nginx进程
ps -ef |gerp nginx
如下即成功~
root 1505 1 0 Jul21 ? 00:00:00 nginx: master process ./opt/nginx/sbin/nginx
nobody 1506 1505 0 Jul21 ? 00:00:00 nginx: worker process
root 5007 4912 0 22:21 pts/1 00:00:00 grep --color=auto nginx
具体nginx其他操作参考:https://www.cnblogs.com/Jack-cx/p/9356467.html
终于完了,,python后端大概告一段落,我要开始学习性能啦~ 后面同样记录到博客园,记录每个坑~~~
@若有理解错误的地方,请留言告知,谢谢~
[linux]centos7.4部署django+Uwsgi+Nginx的更多相关文章
- Centos 7 下部署Django + uWSGI + Nginx
1.废话 之前利用Django写了些测试工具,一直是直接 python manage.py runserver 8081这么来用的.用户量不大,倒也不影响什么.uWSGI+Nginx的性能肯定要好,s ...
- centos7下部署Django(nginx+uwsgi+python3+django)
系统版本 centos7 python版本 使用官方python3.6.3正式版 django版本 使用本文发布时最新的1.11.7 uwsgi版本 使用本文发布时最新的2.0.15 nginx版本 ...
- SLAM+语音机器人DIY系列:(八)高阶拓展——2.centos7下部署Django(nginx+uwsgi+django+python3)
0.安装步骤预览(1)系统默认自带python2.x,所以需要先安装python3.x(2)python2对应pip,python3对应pip3,用源码安装python3后pip3也自动安装了(3)用 ...
- linux之Ubuntu下Django+uWSGI+nginx部署
http://www.chenxm.cc/post/275.html?segmentfault
- 在UOS 上部署 django + uwsgi + nginx 流程
前言:这篇主要是流程,不喜勿喷,虽然我知道在部署过程中 参照博客写的越详细越好. 强大的百度会解决一切的 爬了诸多坑 ,心累,必须总结!! 最近 芯片封锁闹的很凶 支持国产!! UOS 统一操作系统 ...
- 学习项目部署Django+uwsgi+Nginx生产环境部署
绪论 项目生产环境部署,是很重的一个知识点.第一,Django自带的服务器很简陋,由于测试和开发环境尚可,无法用于生产环境,保障安全性和可靠性.以及性能.此外,学习部署方式,还有利于了解生产部署后的项 ...
- Ubuntu环境下部署Django+uwsgi+nginx总结
前言 这是我在搭建Django项目时候的过程,拿来总结记录,以备不时之需. 项目采用nginx+uwsgi的搭配方式. 项目依赖包采用requirements.txt文件管理的方式. 本地准备工作 确 ...
- Django Linux环境下部署CentOS7+Python3+Django+uWSGI+Nginx(含Nginx返回400问题处理、防火墙管理)
本文将介绍如何在Linux系统上部署Django web项目,本次部署基于下面的架构: CentOS7+ Python3.5 + Django1.11 + uWSGI + Nginx 亲测可行!!按照 ...
- Linux 集群概念 , wsgi , Nginx负载均衡实验 , 部署CRM(Django+uwsgi+nginx), 部署学城项目(vue+uwsgi+nginx)
Linux 集群概念 , wsgi , Nginx负载均衡实验 , 部署CRM(Django+uwsgi+nginx), 部署学城项目(vue+uwsgi+nginx) 一丶集群和Nginx反向代理 ...
随机推荐
- centos7 设置dns
查看当前网络连接 nmcli connection show NAME UUID TYPE DEVICE eth0 5fb06bd0-0bb0-7ffb-45f1-d6edd65f3e03 802-3 ...
- P6628-[省选联考 2020 B 卷] 丁香之路【欧拉回路,最小生成树】
正题 题目链接:https://www.luogu.com.cn/problem/P6628 题目大意 给出\(n\)个点的一张完全无向图,\(i\sim j\)的边权是\(|i-j|\). 然后给出 ...
- P4606-[SDOI2018]战略游戏【圆方树,虚树】
正题 题目链接:https://www.luogu.com.cn/problem/P4606 题目大意 给出\(n\)个点\(m\)条边的一张图,\(q\)次询问给出一个点集,询问有多少个点割掉后可以 ...
- 博客调网易云歌单JS
<!--音乐--> <link rel="stylesheet" href="https://blog-static.cnblogs.com/files ...
- 支持remote write和exemplar的prometheus服务
最近项目组在做Prometheus指标采集和告警,其中用到了Prometheus的exemplar特性,由于该特性比较新,当前支持该特性的存储有比较少.因此需要自行实现exemplar功能. 我在gi ...
- 让前端的下拉框支持单选、多选及全选,后台MyBaits解决方案
目录 一.解决思路 二.请求参数 三.后台相关代码 四.Mybatis注意要点 一.解决思路 让前端的下拉框支持单选.多选及全选,后台让Mybatis使用** trim **标签拼接动态SQL,实 ...
- CSS 小技巧 | 一行代码实现头像与国旗的融合
到国庆了,大家都急着给祖国母亲庆生. 每年每到此时,微信朋友圈就会流行起给头像装饰上国旗,而今年又流行这款: emm,很不错. 那么,将一张国旗图片与我们的头像,快速得到想要的头像,使用 CSS 如何 ...
- VirtualBox上安装Debian10个人备忘笔记
准备 VirtualBox 下载链接:Downloads – Oracle VM VirtualBox,下载完成后安装即可. Debian 下载链接:通过 HTTP/FTP 下载 Debian CD/ ...
- 如何在 Serverless K8s 集群中低成本运行 Spark 数据计算?
作者 | 柳密 阿里巴巴阿里云智能 ** 本文整理自<Serverless 技术公开课>,关注"Serverless"公众号,回复"入门",即可获取 ...
- 题解 [SBCOI2020] 一直在你身旁
题目传送门 题目大意 给出一个长度为 \(n\) 的单调不减的序列,每次可以选出一个点,产生贡献 \(a_k\),我们可以得知我们需要找到的数是否大于 \(k\).问找到要找到的数最小花费. \(n\ ...