将Django框架和遗留的Web应用集成的方法


Posted in Python onJuly 24, 2015

同由其他技术驱动的应用一样,在相同的Web服务器上运行Django应用也是可行的。 最简单直接的办法就是利用Apaches配置文件httpd.conf,将不同的URL类型分发至不同的技术。

关键在于只有在您的httpd.conf文件中进行了相关定义,Django对某个特定的URL类型的驱动才会被激活。

<Location "/">
  SetHandler python-program
  PythonHandler django.core.handlers.modpython
  SetEnv DJANGO_SETTINGS_MODULE mysite.settings
  PythonDebug On
</Location>
这里, <Location "/"> 这一行表示用Django处理每个以根开头的URL.

精妙之处在于Django将<location>指令值限定于一个特定的目录树上。 举个例子,比如说您有一个在某个域中驱动大多数页面的遗留PHP应用,并且您希望不中断PHP代码的运行而在../admin/位置安装一个Django域。 要做到这一点,您只需将<location>值设置为/admin/即可。

<Location "/admin/">
  SetHandler python-program
  PythonHandler django.core.handlers.modpython
  SetEnv DJANGO_SETTINGS_MODULE mysite.settings
  PythonDebug On
</Location>

有了这样的设置,只有那些以/admin/开头的URL地址才会触发Django去进行处理。 其他页面会使用已存在的设置。

请注意,把Diango绑定到的合格的URL(比如在本章例子中的 /admin/ )并不会影响其对URL的解析。 绝对路径对Django才是有效的(例如 /admin/people/person/add/ ),而非截断后的URL(例如 /people/person/add/ )。这意味着你的根URLconf必须包含前缀 /admin/ 。

Python 相关文章推荐
Python使用Flask框架同时上传多个文件的方法
Mar 21 Python
Win7下搭建python开发环境图文教程(安装Python、pip、解释器)
May 17 Python
Scrapy框架CrawlSpiders的介绍以及使用详解
Nov 29 Python
浅谈Python实现2种文件复制的方法
Jan 19 Python
python程序控制NAO机器人行走
Apr 29 Python
python写日志文件操作类与应用示例
Jul 01 Python
Python线程协作threading.Condition实现过程解析
Mar 12 Python
pytorch 中的重要模块化接口nn.Module的使用
Apr 02 Python
详解Flask前后端分离项目案例
Jul 24 Python
python Matplotlib数据可视化(1):简单入门
Sep 30 Python
django注册用邮箱发送验证码的实现
Apr 18 Python
python人工智能human learn绘图可创建机器学习模型
Nov 23 Python
将Python的Django框架与认证系统整合的方法
Jul 24 #Python
Django与遗留的数据库整合的方法指南
Jul 24 #Python
简介Django中内置的一些中间件
Jul 24 #Python
Python字符串转换成浮点数函数分享
Jul 24 #Python
详解Python的Django框架中的中间件
Jul 24 #Python
浅谈Python的Django框架中的缓存控制
Jul 24 #Python
详解Django缓存处理中Vary头部的使用
Jul 24 #Python
You might like
德生S2000收音机更换“钕铁硼”全频扬声器
2021/03/02 无线电
图形数字验证代码
2006/10/09 PHP
php HtmlReplace输入过滤安全函数
2010/07/03 PHP
php UBB 解析实现代码
2011/11/27 PHP
PHP加密解密实例分析
2015/12/25 PHP
JavaScript 学习历程和心得分享
2010/12/12 Javascript
js 自定义个性下拉选择框示例
2013/08/20 Javascript
JS+CSS设置img在DIV中只显示Img垂直居中的部分
2013/10/24 Javascript
简单的ajax连接库分享(不用jquery的ajax)
2014/01/19 Javascript
JavaScript中length属性的使用方法
2015/06/05 Javascript
详解Javascript模板引擎mustache.js
2016/01/20 Javascript
微信小程序 Record API详解及实例代码
2016/09/30 Javascript
easyUI实现(alert)提示框自动关闭的实例代码
2016/11/07 Javascript
js实现动态显示时间效果
2017/03/06 Javascript
JS获取填报扩展单元格控件的值的解决办法
2017/07/14 Javascript
JS实现瀑布流布局
2017/10/21 Javascript
通过vue-router懒加载解决首次加载时资源过多导致的速度缓慢问题
2018/04/08 Javascript
Three.JS实现三维场景
2018/12/30 Javascript
详解Vue中CSS样式穿透问题
2019/09/12 Javascript
[01:06:18]DOTA2-DPC中国联赛 正赛 Phoenix vs Dynasty BO3 第二场 1月26日
2021/03/11 DOTA
Python入门篇之字典
2014/10/17 Python
Django项目中model的数据处理以及页面交互方法
2018/05/30 Python
解决springboot yml配置 logging.level 报错问题
2020/02/21 Python
关于Python3的import问题(pycharm可以运行命令行import错误)
2020/11/18 Python
python和opencv构建运动检测器的实现
2021/03/03 Python
手机端用rem+scss做适配的详解
2017/11/15 HTML / CSS
微软马来西亚官方网站:Microsoft马来西亚
2019/11/22 全球购物
毕业自我评价范文
2013/11/17 职场文书
2014年会演讲稿范文
2014/01/06 职场文书
护士毕业实习感言
2014/03/05 职场文书
三严三实对照检查材料思想汇报
2014/09/28 职场文书
践行党的群众路线心得体会
2014/11/05 职场文书
开学第一周值周总结
2015/07/16 职场文书
敬老院活动感想
2015/08/07 职场文书
Windows下redis下载、redis安装及使用教程
2021/06/02 Redis
快速学习Oracle触发器和游标
2021/06/30 Oracle