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- ...
随机推荐
- 监控-CPU使用率
原始脚本来自TG,自己对部分脚本做了调整,分享出来仅供参考,请勿整篇Copy! 使用以下语句获取[CPU使用率] USE [DBA_Monitor] GO /****** 对象: StoredProc ...
- Git仓库创建和文件提交
参考质料:廖雪峰的个人网站 Git 什么是Git:一个分布式版本管理系统: 作用:管理你的历史文件,文件修改历史,团队协作. Windows下安装Git: 到链接下载安装包,国内镜像 云盘 安装完成后 ...
- JVM菜鸟进阶高手之路一(一次与笨神,阿飞近距离接触修改JVM)
转载请注明原创出处,谢谢! 今天在JVMPocket群里面看见,阿牛发了一个gc截图,之后ak47截图了特别恐怖,我就觉得好奇,去看看服务情况,截图日志如下 关于jstat命令详情可以参考:https ...
- Java-Filter过滤器用于过滤整个项目的编码
整个分为实现类以及在web.xml文件中对编写的filter类进行注册 代码如下 package cn.itcast.itcaststore.web.filter; import java.io.IO ...
- BZOJ1854_游戏_KEY
1854: [Scoi2010]游戏 Time Limit: 5 Sec Memory Limit: 162 MB Description lxhgww最近迷上了一款游戏,在游戏里,他拥有很多的装备, ...
- Pycharm中如何加载多个项目?
今天在使用Pycharm工具练习Python时遇到一个疑问:在已存有项目A工程的前提下如何新建另一个项目B,且两者并存? 基本操作步骤: 在File下拉项中选择"New Project&qu ...
- ThinkPHP中:用户登录权限验证类
使用CommonAction.class.php公共类,统一判断用户是否登录 <?php //后台登录页 Class CommonAction extends Action{ //后台登录页面 ...
- ThinkPHP中:检查Session是否过期
1.创建Session public function index(){ $sess_time=time(); session('name','andy'); session('time_stamp' ...
- 在分布式数据库中CAP原理CAP+BASE
本篇博文的内容均来源于网络,本人只是整理,仅供学习! 一.关系型数据库 关系型数据库遵循ACID规则 事务在英文中是transaction,和现实世界中的交易很类似,它有如下四个特性: 1.A (At ...
- bzoj3156 防御准备 - 斜率优化
Input 第一行为一个整数N表示战线的总长度. 第二行N个整数,第i个整数表示在位置i放置守卫塔的花费Ai. Output 共一个整数,表示最小的战线花费值. Sample Input 102 3 ...