centos6.5配置uwsgi与nginx支持django
一.centos中升级python
1. > wget https://www.python.org/ftp/python/3.5.4/Python-3.5.4.tgz # https://www.python.org/ftp/python 此网站可以选择对应的版本(通过此方式下载的包就在当前目录,所以可以提前创建好目录并进入)
2. > tar -zxvf Python-3.5.4.tgz # 解压到当前目录
3. > cd Python-3.5.4
> ./configure --prefix=/usr/local/python3.5 --enable-shared
> make
> make install
> ln -s /usr/local/python3.5/bin/python3 /usr/bin/python3 # 建立软链接
> cp -R /usr/local/python3.5/lib/* /usr/lib64/ # 不拷贝运行python会报错
二.安装setuptools
1. > wget --no-check-certificate https://pypi.python.org/packages/source/s/setuptools/setuptools-19.6.tar.gz#md5=c607dd118eae682c44ed146367a17e26
> tar -zxvf setuptools-19.6
> cd setuptools-19.6
> python3 setup.py build
> python3 setup.py install
2.报错:RuntimeError: Compression requires the (missing) zlib module
3. > yum install zlib-devel
> cd python3.5
> make
> make install
4. > cd setuptools-19.6
> python3 setup.py build
> python3 setup.py install
三.安装pip
1. > wget --no-check-certificate https://pypi.python.org/packages/source/p/pip/pip-8.0.2.tar.gz#md5=3a73c4188f8dbad6a1e6f6d44d117eeb
2. 同setuptools
3. python3 -m pip install uWSGI
4. 报错:ImportError: cannot import name 'HTTPSHandler'
5. 同2中的3、4
6. ln -s /usr/local/python3.5/bin/pip3 /usr/bin/pip3
四.安装uWSGI
1. > pip3 install uWSGI
> ln -s /usr/local/python3.5/bin/uwsgi /usr/bin/uwsgi
2. 使用:
uwsgi --http :8089 --wsgi-file test.py
uwsgi ---http :8088 --chdir /usr/local/python_test/guest/ --wsgi-file guest/wsgi.py --master --processes 4 --stats 127.0.0.1:9191
3. 常用命令:
--http:协议类型和端口号
--processes:开启进程的数量
--workers:等同于processes
--chdir:指定运行目录
--wsgi-file:载入wsgi-file文件
--stats:在指定的地址上开启服务状态
--threads:开启的线程数量
--master:允许主进程存在
--daemonize:使进程在后台运行,并将日志输出到指定的日志文件或者UDP服务器
--pidfile:指定pid文件的位置,记录主进程的pid号
--vacuum:当服务器退出时自动清理环境,删除Unix Socket文件和pip文件
五.安装nginx
1. > yum install nginx
2. Nginx基本操作
1./etc/init.d/nginx stop或者service nginx stop # 停止nginx
2./etc/init.d/nginx start或者service nginx start # 启动nginx
3./etc/init.d/nginx restart或者service nginx restart # 重启nginx
4.nginx -v # 查看版本
5.whereis nginx # 查看nginx的安装位置
6.find / -name nginx # 查找名字为nginx的目录或者文件
3. 修改默认端口号
> vim /etc/nginx/conf.d/default.conf # 修改server里的listen端口为8088
> nginx -s reload # 重新启动nginx
4. 在浏览器中访问127.0.0.1:8088,如果能正常访问,说明nginx环境配置正确
六.配置uwsgi与nginx支持django
1. 在创建guest目录时,在guest目录下默认已经生成了wsgi.py文件。在根目录创建django_uwsgi.ini,配置uWSGI参数
内容如下:
[uwsgi]
socket = 127.0.0.1:8088
chdir = /usr/local/python_test/guest
module = guest.wsgi
master = true
processes = 3
vacuum = true
2. 进入nginx所在目录,并修改配置文件
1. > vim /etc/nginx/nginx.config
2. 添加如下配置:
server {
listen 8089; # 实际访问的端口
server_name 127.0.0.1; # 实际访问的地址
access_log /usr/local/python_test/access.log;
error_log /usr/local/python_test/error.log;
location / {
include uwsgi_params;
uwsgi_pass 127.0.0.1:8001; # 项目中的django_uwsgi.ini文件配置的端口
}
# 配置静态文件
location /static {
alias /usr/local/python_test/guest/sign/static;
}
}
3. 启动网站
1. 重启nginx
> ngingx -s reload
2. 启动uwsgi服务
> uwsgi --ini django_uwsgi.ini # 执行命令的前提是需进入django_uwsgi.ini所在目录
4.检测网站是否启动
1.在浏览器中输入:127.0.0.1:8089,看是否能访问
centos6.5配置uwsgi与nginx支持django的更多相关文章
- uwsgi加nginx部署django restframework前后端分离项目
一.uwsgi和nginx简介 1.uwsgi(摘抄于百度百科): uWSGI是一个Web服务器,它实现了WSGI协议.uwsgi.http等协议.Nginx中HttpUwsgiModule的作用是与 ...
- uwsgi+anaconda+nginx部署django项目(ubuntu下)
conda 环境不必多说: conda(或source) activate test 进入test虚拟环境 接下来安装uwsgi: pip install uwsgi 在conda环境下大概率安装 ...
- 基于腾讯云CentOS7.4+MySQL5.7+Python3+uwsgi+nginx的Django项目部署
准备知识 1.django一个基于python的开源web框架,请确保自己熟悉它的框架目录结构. 2.uWSGI一个基于自有的uwsgi协议.wsgi协议和http服务协议的web网关 3.nginx ...
- 使用uWSGI和nginx来设置Django和你的web服务器
本教程针对那些想要设置一个生产web服务器的Django用户.它介绍了设置Django以使得其与uWSGI和nginx工作良好的必要步骤.它涵盖了所有三个组成部分,提供了一个web应用和服务器软件的完 ...
- Ubuntu Nginx Uwsgi Python布置服务器Django项目
1 安装python 3.6 ubuntu预装了2.7,不需要卸载预装库,直接安装python3.6(其实现在的阿里云18.04会给你自动装python2.7.15和3.6.8) 你可以分别查看一下 ...
- nginx部署django应用
Django部署方式有很多种,之前写过一篇部署在Apache上的博文:https://www.cnblogs.com/shenh/p/7552722.html .下文介绍的是通过Nginx来部署. N ...
- 阿里云服务器部署笔记二(python3、Flask、uWSGI、Nginx)
从git上把项目拉到服务器,项目可以在服务器上运行后,就只需要配置uwsgi和nginx了.它们的逻辑关系是:外部请求->nginx->uwsgi->项目实例. 一.配置uwsgi ...
- Nginx支持连接数的问题
据网上有人说nginx的配置中: nginx支持的最大连接数与以下因素有关: worker_processes ; events { worker_connections ; } ulimit -a ...
- 第四百零二节,Django+Xadmin打造上线标准的在线教育平台—生产环境部署,uwsgi安装和启动,nginx的安装与启动,uwsgi与nginx的配置文件+虚拟主机配置
第四百零二节,Django+Xadmin打造上线标准的在线教育平台—生产环境部署,uwsgi安装和启动,nginx的安装与启动,uwsgi与nginx的配置文件+虚拟主机配置 软件版本 uwsgi- ...
随机推荐
- jstl-初步认知
JSTL是java提供的JSP标签库 1,在项目中加入 jsf-api.jar jsf-impl.jar jstl-1.2.jar 三个包 2, 如何在jsp页面引入标签库 使用 <@tagli ...
- ubuntu下程序员常用命令大全
一.ubuntu下用命令查询系统版本 1.在终端中执行下列指令: cat /etc/issue 该命令可查看当前正在运行的ubuntu的版本号. 效果如图: 2.使用 lsb_release 命令也可 ...
- Bootstrap笔记合集
一. 为了简化操作,方便使用,Bootstrap通过定义四个类名来控制文本的对齐风格: ☑ .text-left:左对齐 ☑ .text-center:居中对齐 ☑ .text-right ...
- C++11获取线程的返回值
C++11 std::future and std::promise 在许多时候,我们会有这样的需求--即我们想要得到线程返回的值. 但是在C++11 多线程中我们注意到,std::thread对象会 ...
- 当你的SSM项目中的springmvc.xml发生第一行错误解决方案
当你新建了一个SSM项目,你复制网上的xml文件来配置或者你下载了一个SSM项目打开发现xml文件错误,打开是第一行报错的时候你是不是很懵逼 或者是这样 总之就是xml文件中<?xml vers ...
- [spring 入门第一天]
关于Spring Framework 简介: Spring框架提供了一个全面的现代java企业应用程序编程和配置模型——可以部署在任何类型的平台.支持任何级别的应用程序:spring专注于程序架构,这 ...
- 关于 String 自我理解
String 的一些认识: String对象是不可变,所以使用 final 修饰 字符串拼接,合理利用 StringBuilder(线程非安全),StringBuffer 线程安全 常用方法就不详细介 ...
- Dice (II) (DP)唉,当时没做出来
Dice (II) Time Limit: 3000MS Memory Limit: 32768KB 64bit IO Format: %lld & %llu [Submit] [ ...
- 【归纳整理】Ajax / JSON / WEB存储 / iframe
Ajax 一.什么是 AJAX ? AJAX = Asynchronous JavaScript and XML(异步的 JavaScript 和 XML). AJAX 是一种用于创建快速动态网页 ...
- linux备份文件脚本
#!/bin/sh #Author: Opal TODAY=`date +%Y%m%d` YESTERDAY=`date -d"-1 day" +%Y%m%d` mkdir -p ...