前言:我已经写了几个接口用来部署在服务器上的,首先选择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的更多相关文章

  1. Centos 7 下部署Django + uWSGI + Nginx

    1.废话 之前利用Django写了些测试工具,一直是直接 python manage.py runserver 8081这么来用的.用户量不大,倒也不影响什么.uWSGI+Nginx的性能肯定要好,s ...

  2. centos7下部署Django(nginx+uwsgi+python3+django)

    系统版本 centos7 python版本 使用官方python3.6.3正式版 django版本 使用本文发布时最新的1.11.7 uwsgi版本 使用本文发布时最新的2.0.15 nginx版本 ...

  3. SLAM+语音机器人DIY系列:(八)高阶拓展——2.centos7下部署Django(nginx+uwsgi+django+python3)

    0.安装步骤预览(1)系统默认自带python2.x,所以需要先安装python3.x(2)python2对应pip,python3对应pip3,用源码安装python3后pip3也自动安装了(3)用 ...

  4. linux之Ubuntu下Django+uWSGI+nginx部署

    http://www.chenxm.cc/post/275.html?segmentfault

  5. 在UOS 上部署 django + uwsgi + nginx 流程

    前言:这篇主要是流程,不喜勿喷,虽然我知道在部署过程中 参照博客写的越详细越好. 强大的百度会解决一切的 爬了诸多坑 ,心累,必须总结!! 最近 芯片封锁闹的很凶  支持国产!! UOS 统一操作系统 ...

  6. 学习项目部署Django+uwsgi+Nginx生产环境部署

    绪论 项目生产环境部署,是很重的一个知识点.第一,Django自带的服务器很简陋,由于测试和开发环境尚可,无法用于生产环境,保障安全性和可靠性.以及性能.此外,学习部署方式,还有利于了解生产部署后的项 ...

  7. Ubuntu环境下部署Django+uwsgi+nginx总结

    前言 这是我在搭建Django项目时候的过程,拿来总结记录,以备不时之需. 项目采用nginx+uwsgi的搭配方式. 项目依赖包采用requirements.txt文件管理的方式. 本地准备工作 确 ...

  8. Django Linux环境下部署CentOS7+Python3+Django+uWSGI+Nginx(含Nginx返回400问题处理、防火墙管理)

    本文将介绍如何在Linux系统上部署Django web项目,本次部署基于下面的架构: CentOS7+ Python3.5 + Django1.11 + uWSGI + Nginx 亲测可行!!按照 ...

  9. Linux 集群概念 , wsgi , Nginx负载均衡实验 , 部署CRM(Django+uwsgi+nginx), 部署学城项目(vue+uwsgi+nginx)

    Linux 集群概念 , wsgi , Nginx负载均衡实验 , 部署CRM(Django+uwsgi+nginx), 部署学城项目(vue+uwsgi+nginx) 一丶集群和Nginx反向代理 ...

随机推荐

  1. AVS 端能力之蓝牙模块

    该类为蓝牙端能力处理类,主要负责蓝牙设备配对和蓝牙音频播放功能. 功能简介 实现蓝牙设备的启动发现模式.扫描蓝牙设备.建立蓝牙连接功能 实现蓝牙设备音频播放.停止.上一首.下一首功能 其它细节参考&l ...

  2. Python创建Excel表格,Word并写入数据

    from tkinter import Tk from time import sleep from tkinter.messagebox import showwarning import win3 ...

  3. 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 ...

  4. P1912-[NOI2009]诗人小G【四边形不等式,单调队列】

    正题 题目链接:https://www.luogu.com.cn/problem/P1912 题目大意 给出\(n\)个字符串,把这些字符串依次用空格(算一个长度)连接分成若干段,若一段长度为\(x\ ...

  5. 实时渲染基础(4)纹理(Texture)

    目录 纹理映射(Texture Mapping) 球形贴图(Spherical Map) 立方体贴图(Cube Map) 纹理走样问题 Mipmap 各向异性过滤(Ripmap) 纹理应用技术(Tex ...

  6. Go语言之函数

    函数就是一块执行特定任务的代码,在输入源的基础上通过一些算法生成预期的输出. 一.函数的声明 Go 语言中的函数声明语法如下: func 函数名(参数名 类型,参数名 类型)(返回值1类型,返回值2类 ...

  7. minikube addons enable ingress 启动错误

    minikube addons enable ingress 启动错误 开启 minkube ingress 时错误 minikube addons enable ingress --alsologt ...

  8. NOIP模拟72

    T1 出了个大阴间题 解题思路 看了看数据,大概是个状压 DP,但是感觉记忆化搜索比较好写一点(然而并不是这样递归比迭代常熟大了许多..) 不难判断出来 b 的数值与合并的顺序无关于是我们可以预先处理 ...

  9. 解决VM 与 Device/Credential Guard 不兼容

    通过命令关闭Hyper-V(控制面板关闭Hyper-V起不到决定性作用,要彻底关闭Hyper-V) 以管理员身份运行Windows Powershell (管理员)(Windows键+X) 运行下面命 ...

  10. python中dump与dumps实现序列化

    前言 使用中如果我们想把python可识别对象的dict类型的数据通过str类型写入文件或者存入变量中就需要用到dump与dumps 详解 dump 1.新建个dict文件,然后将dict文件存入一个 ...