nginx+uwsgi 部署 django
预装:nginx, django
Django站点tree
|Site
|-----Blog(自建的项目)
|-----Manage.py
|-----Site(setting url wsgi….)
| |-----wsgi.py
|-----static
| |-----js
| |-----css
|-----uwsgi.log
|-----uwsgi-socket.xml
1. libxml2、libxml2-devel、uwsgi
1.1 安装
注:必须先安装libxml2、libxml2-devel,再安装uwsgi
rpm –ivh Libxml2*****
pip: pip install uwsgi
tar: python setup.pu install
1.2测试uwsgi
vim testuwsgi.py
def application(env, start_response):
start_response('200 OK',[('Content-Type','text/html')])
return "uwsgi ok!"
命令行执行:
uwsgi --http :8001 --wsgi-file testuwsgi.py
浏览器测试:127.0.0.1:8001
2. 配置Site/wsgi.py
import sys
import os
os.environ.setdefault("DJANGO_SETTINGS_MODULE","logSite.settings")
from django.core.wsgi import get_wsgi_application
application = get_wsgi_application()
sys.path.append('/Site')
sys.path.append('/Site/Site')
3.测试 uwsgi +django
执行命令:
uwsgi --http :8001 --chdir /Site/Site --module wsgi
/Site/Site是wsgi.py的目录
wsgi作为module
浏览器测试:127.0.0.1:8001
4. nginx + uwsgi + django
4.1 创建nginx + uwsgi 进行socket连接xml文件
vim/Site/uwsgi-socket.xml
<uwsgi>
<socket>:8001</socket> <!-- 别用8000端口,预留8000方便解释器测试 -->
<chdir>/Site/Site</chdir>
<module>wsgi</module>
<processes>4</processes><!-- 进程数 -->
<daemonize>uwsgi.log</daemonize><!-- 创建日志文件 -->
</uwsgi>
4.2 修改nginx.conf 配置文件
server {
listen 8080;
server_name www.site.com;
access_log/logs/access.log;
error_log/logs/error.log;
location / {
include uwsgi_params;
uwsgi_pass 127.0.0.1:8001;
uwsgi_paramUWSGI_CHDIR /Site/Site;
uwsgi_paramUWSGI_SCRIPT wsgi;
}
#静态文件路径
location /static {
alias/Site/static;
}
}
4.3 重启nginx 服务
cd /usr/local/nginx/sbin
./nginx -s reload
4.4 启动uwsgi 服务器
uwsgi -x django-socket.xml
4.5 访问服务
ip:8080
www.site.com
nginx+uwsgi 部署 django的更多相关文章
- 填坑!!!virtualenv 中 nginx + uwsgi 部署 django
一.为什么会有这篇文章 第一次接触 uwsgi 和 nginx ,这个环境搭建,踩了太多坑,现在记录下来,让后来者少走弯路. 本来在 Ubuntu14.04 上 搭建好了环境,然后到 centos7. ...
- nginx + uwsgi 部署 Django+Vue项目
nginx + uwsgi 部署 Django+Vue项目 windows 本地 DNS 解析 文件路径 C:\Windows\System32\drivers\etc 单机本地测试运行方式,调用dj ...
- Python3.6+nginx+uwsgi部署Django程序到阿里云Ubuntu16.04系统
Python3.6+nginx+uwsgi部署Django程序到阿里云Ubuntu16.04系统 这个是写好的Django程序在本地机运行的情况,一个查询接口. 准备工作 1.首先购买一台阿里云的EC ...
- nginx + uwsgi 部署django项目
因项目需求,需要部署django项目,这里是基础的nginx配合uwsgi部署django,后续会采用docker部署的方式 环境: centos7 python3.5.4 django2.1.4 u ...
- 生产环境使用Nginx+uwsgi部署Django
在本地运行django应用相对来说还是挺方便的,使用自带的runserver启动即可.如果在生产环境部署django,就要多考虑一些问题了.比如静态文件处理,安全,效率等等 在网上找到了不错的部署的教 ...
- Nginx + uWSGI 部署Django 项目,并实现负载均衡
一.uWSGI服务器 uWSGI是一个Web服务器,它实现了WSGI协议.uwsgi.http等协议.Nginx中HttpUwsgiModule的作用是与uWSGI服务器进行交换. 要注意 WSGI ...
- 解决nginx+uWSGI部署Django时遇到的static文件404的问题
昨天是利用Django自带的runserver部署的服务器,但是由于runserver比较不稳定,因此决定采用uWSGI+nginx进行部署. 昨天已经安装好了uwsgi和nginx,使用该指令打开8 ...
- CENTOS7 使用 Nginx + Uwsgi 部署 Django 项目
写在前面的话 最近总是见到有新学 Django 的朋友在部署自己的项目到 Linux 上面的时候运行不起来,所以就动手写了这篇博客. 对于不会搭建 Python 3 环境的朋友可以参考前面的博客[CE ...
- 使用Nginx+uWSGI部署Django项目
1.linux安装python3环境 参考链接:https://www.cnblogs.com/zzqit/p/10087680.html 2.安装uwsgi pip3 install uwsgi l ...
- ubuntu+nginx+uwsgi部署django web项目
前言 将本地开发的django项目部署至linux上的uwsgi服务器,并配置nginx,完成基于ubuntu+nginx+uwsgi的上线运行.下面整理相关步骤. 服务器配置virtualenv 如 ...
随机推荐
- Atitit 图像扫描器---基于扫描线
Atitit 图像扫描器---基于扫描线 调用范例 * @throws FileExistEx */ public static void main(String[] args) throws Fil ...
- Atitit 全屏模式的cs桌面客户端软件gui h5解决方案 Kiosk模式
Atitit 全屏模式的cs桌面客户端软件gui h5解决方案 Kiosk模式 1.1. Kiosk Software广泛用于公共电脑或者嵌入系统,最常用的就是ATM机.自动服务机之类的系统了.,1 ...
- 深入分析Java Web技术内幕(修订版)
阿里巴巴集团技术丛书 深入分析Java Web技术内幕(修订版)(阿里巴巴集团技术丛书.技术大牛范禹.玉伯.毕玄联合力荐!大型互联网公司开发应用实践!) 许令波 著 ISBN 978-7-121- ...
- js 字符串的操作
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8" ...
- 事件异步(EAP)使用事件异步处理一些耗时操作
比如需要下载一些比较大的文件,如果使用会UI卡顿,使用异步可以节省一些时间 下面是一些例子: using System; using System.Collections.Generic; using ...
- vuejs动态组件给子组件传递数据
vuejs动态组件给子组件传递数据 通过子组件定义时候的props可以支持父组件给子组件传递数据,这些定义的props在子组件的标签中使用绑定属性即可,但是如果使用的是<component> ...
- 快速入门系列--TSQL-01基础概念
作为一名程序员,对于SQL的使用算是基础中的基础,虽然也写了很多年的SQL,但常常还是记不清一些常见的命令,故而通过一篇博文巩固相关的记忆,并把T-SQL本身的一些新特性再进行一次学习. 首先回顾基础 ...
- opcode的执行
原文链接:http://www.orlion.ga/1001/ 当.php文件被编译为opcode后,下一步的执行并非是把opcode编译为机器码而是类似于如下的方式执行: while (TRUE) ...
- Android基于mAppWidget实现手绘地图(十五)–如何控制放大缩小
一般来说,可以使用以下几种方式来控制地图的放大/缩小 : 1. 使用控件底部的缩放按钮 2.双击控件 3.pinch手势 4.物理按键 :I键标识缩小 :O键表示放大.(只有设备具有物理按键才行) ...
- JS双月份显示联动效果,点击日期浮出消息提示
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...