[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反向代理 ...
随机推荐
- AVS 端能力之蓝牙模块
该类为蓝牙端能力处理类,主要负责蓝牙设备配对和蓝牙音频播放功能. 功能简介 实现蓝牙设备的启动发现模式.扫描蓝牙设备.建立蓝牙连接功能 实现蓝牙设备音频播放.停止.上一首.下一首功能 其它细节参考&l ...
- Python创建Excel表格,Word并写入数据
from tkinter import Tk from time import sleep from tkinter.messagebox import showwarning import win3 ...
- english note(6.2 to 5.30)
notes 6.2 to 5.30 http://www.51voa.com/VOA_Special_English/suicide-rates-among-young-americans-on-t ...
- P1912-[NOI2009]诗人小G【四边形不等式,单调队列】
正题 题目链接:https://www.luogu.com.cn/problem/P1912 题目大意 给出\(n\)个字符串,把这些字符串依次用空格(算一个长度)连接分成若干段,若一段长度为\(x\ ...
- 实时渲染基础(4)纹理(Texture)
目录 纹理映射(Texture Mapping) 球形贴图(Spherical Map) 立方体贴图(Cube Map) 纹理走样问题 Mipmap 各向异性过滤(Ripmap) 纹理应用技术(Tex ...
- Go语言之函数
函数就是一块执行特定任务的代码,在输入源的基础上通过一些算法生成预期的输出. 一.函数的声明 Go 语言中的函数声明语法如下: func 函数名(参数名 类型,参数名 类型)(返回值1类型,返回值2类 ...
- minikube addons enable ingress 启动错误
minikube addons enable ingress 启动错误 开启 minkube ingress 时错误 minikube addons enable ingress --alsologt ...
- NOIP模拟72
T1 出了个大阴间题 解题思路 看了看数据,大概是个状压 DP,但是感觉记忆化搜索比较好写一点(然而并不是这样递归比迭代常熟大了许多..) 不难判断出来 b 的数值与合并的顺序无关于是我们可以预先处理 ...
- 解决VM 与 Device/Credential Guard 不兼容
通过命令关闭Hyper-V(控制面板关闭Hyper-V起不到决定性作用,要彻底关闭Hyper-V) 以管理员身份运行Windows Powershell (管理员)(Windows键+X) 运行下面命 ...
- python中dump与dumps实现序列化
前言 使用中如果我们想把python可识别对象的dict类型的数据通过str类型写入文件或者存入变量中就需要用到dump与dumps 详解 dump 1.新建个dict文件,然后将dict文件存入一个 ...