当前位置: 首页 > news >正文

nginx下使用Django

在Linux下访问Django框架搭建的程序,同windows下的直接启动manage服务不同,这里是通过uwsgi 来启动服务。前提是服务器中已经存在了uwsgi,安装本文没有提到。
 
1、需要在Django根目录下存在两个文件:
django_wsgi.py
文件内容:
 
import os
import django.core.handlers.wsgi
os.environ['DJANGO_SETTINGS_MODULE'] = 'beachbox.settings'
application = django.core.handlers.wsgi.WSGIHandler()
其中setting文件改为自己的。
 
uwsgi.xml
文件内容:
 
<uwsgi>  
  <socket>127.0.0.1:6666</socket>  
  <listen>20</listen>  
  <master>true</master> 
  <pidfile>/usr/local/nginx/uwsgi.pid</pidfile>  
  <processes>2</processes>  
  <module>django_wsgi</module> 
  <pythonpath>/data1/vul_regression/project/beachbox</pythonpath>
  <profiler>true</profiler>  
  <memory-report>true</memory-report>  
  <enable-threads>true</enable-threads>  
  <logdate>true</logdate>  
  <limit-as>6048</limit-as>  
</uwsgi> 
 
其中pythonpath改为自己的路径。
 
2、Django的urls文件中,加上一种patterns,这是为了支持静态文件JS和CSS等,如下:
 
urlpatterns  = patterns('',    
    url(r'^static/(?P.*)$', 'django.views.static.serve', {'document_root': settings.STATIC_PATH, 'show_indexes':True}),
)
 
此处要注意的是,我这个patterns是放在最上面的,那么相应的原来的第一个patterns的等于号(=)应该改为加等(+=),以免覆盖上面内容而不起作用。
 
3、nginx配置文件,例如路径 /usr/local/nginx/conf/nginx.conf
文件中加入Web服务:
server {
        listen 11111;
        server_name 1.2.3.0;
        location / { 
            root /data1/project/beachbox;
            uwsgi_pass 127.0.0.1:6666;
            include uwsgi_params;
            access_log off;}
    } 
 
其中server_name的IP或者域名自己修改,listen端口自己设置,便是之后要访问的端口。 
 
最后,启动服务命令:
nohup uwsgi -x /data1/project/beachbox/uwsgi.xml &
访问:http://1.2.3.0:11111/ 即可成功访问网页啦~

转载于:https://www.cnblogs.com/darlingding/archive/2013/05/01/3053559.html

相关文章:

  • 五款超实用的开源SVG工具
  • solr dataimport 数据导入源码分析(十二)
  • secucrt相关技巧
  • [经典语录][电影]全民情敌/Hitch
  • iPhone私有API学习笔记
  • NS2源码图示---物理层 (转帖)
  • 火狐浏览器的一些常用设置
  • 代码行统计脚本.
  • Python property
  • 图的遍历(深度优先遍历)- 数据结构和算法59
  • 网页剪辑有道云笔记、印象笔记(evernote)哪个更好?
  • 定义类C++ primer目录
  • office365组同步问题
  • Tomcat配置数据池
  • 分享:avhttp简介
  • [Vue CLI 3] 配置解析之 css.extract
  • 【MySQL经典案例分析】 Waiting for table metadata lock
  • 2017-09-12 前端日报
  • Druid 在有赞的实践
  • fetch 从初识到应用
  • iOS 颜色设置看我就够了
  • Java 多线程编程之:notify 和 wait 用法
  • leetcode378. Kth Smallest Element in a Sorted Matrix
  • Linux链接文件
  • Netty源码解析1-Buffer
  • Theano - 导数
  • 快速构建spring-cloud+sleuth+rabbit+ zipkin+es+kibana+grafana日志跟踪平台
  • 排序算法之--选择排序
  • 手机app有了短信验证码还有没必要有图片验证码?
  • 吐槽Javascript系列二:数组中的splice和slice方法
  • 微信支付JSAPI,实测!终极方案
  • 我从编程教室毕业
  • 用 vue 组件自定义 v-model, 实现一个 Tab 组件。
  • 原生js练习题---第五课
  • 在Unity中实现一个简单的消息管理器
  • 国内开源镜像站点
  • ​LeetCode解法汇总2670. 找出不同元素数目差数组
  • #我与Java虚拟机的故事#连载04:一本让自己没面子的书
  • (4)事件处理——(7)简单事件(Simple events)
  • (c语言)strcpy函数用法
  • (LeetCode) T14. Longest Common Prefix
  • (附源码)ssm码农论坛 毕业设计 231126
  • (论文阅读30/100)Convolutional Pose Machines
  • (幽默漫画)有个程序员老公,是怎样的体验?
  • (转)Google的Objective-C编码规范
  • (转载)OpenStack Hacker养成指南
  • .NET Core6.0 MVC+layui+SqlSugar 简单增删改查
  • .Net多线程总结
  • [AIGC 大数据基础]hive浅谈
  • [BUG] Authentication Error
  • [C# 网络编程系列]专题六:UDP编程
  • [C#]使用PaddleInference图片旋转四种角度检测
  • [C++] cout、wcout无法正常输出中文字符问题的深入调查(1):各种编译器测试
  • [DNS网络] 网页无法打开、显示不全、加载卡顿缓慢 | 解决方案
  • [ES-5.6.12] x-pack ssl