将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类继承与子类实例初始化用法分析
Apr 17 Python
Python中的getopt函数使用详解
Jul 28 Python
python监控文件或目录变化
Jun 07 Python
Python 基础知识之字符串处理
Jan 06 Python
Python编写一个优美的下载器
Apr 15 Python
详解Pytorch 使用Pytorch拟合多项式(多项式回归)
May 24 Python
python实现websocket的客户端压力测试
Jun 25 Python
python多线程同步实例教程
Aug 11 Python
解决django 向mysql中写入中文字符出错的问题
May 18 Python
Python使用jupyter notebook查看ipynb文件过程解析
Jun 02 Python
详解KMP算法以及python如何实现
Sep 18 Python
python 模拟在天空中放风筝的示例代码
Apr 21 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
php实现查询百度google收录情况(示例代码)
2013/08/02 PHP
php分页示例分享
2014/04/30 PHP
PHP删除数组中指定下标的元素方法
2018/02/03 PHP
PHP使Laravel为JSON REST API返回自定义错误的问题
2018/10/16 PHP
PHP中Static(静态)关键字功能与用法实例分析
2019/04/05 PHP
原生js做的手风琴效果的导航菜单
2013/11/08 Javascript
鼠标移到div,浮层显示明细,弹出层与div的上边距左边距重合(示例代码)
2013/12/14 Javascript
JS比较两个时间大小的简单示例代码
2013/12/20 Javascript
jquery实现点击变换导航样式的方法
2015/08/31 Javascript
javascript实现仿百度图片的瀑布流加载效果
2016/04/20 Javascript
nodejs加密Crypto的实例代码
2016/07/07 NodeJs
vue中appear的用法
2017/08/17 Javascript
VSCode配置react开发环境的步骤
2017/12/27 Javascript
浅析vue深复制
2018/01/29 Javascript
nodejs之koa2请求示例(GET,POST)
2018/08/07 NodeJs
chosen实现省市区三级联动
2018/08/16 Javascript
Vue props 单向数据流的实现
2018/11/06 Javascript
js 计算月/周的第一天和最后一天代码
2020/02/01 Javascript
[03:02]生活中的Dendi之野外度假篇
2016/08/09 DOTA
python处理PHP数组文本文件实例
2014/09/18 Python
Python实现过滤单个Android程序日志脚本分享
2015/01/16 Python
python得到电脑的开机时间方法
2018/10/15 Python
numpy数组之存取文件的实现示例
2019/05/24 Python
python实现视频读取和转化图片
2019/12/10 Python
Python3实现mysql连接和数据框的形成(实例代码)
2020/01/17 Python
Python日志logging模块功能与用法详解
2020/04/09 Python
python函数map()和partial()的知识点总结
2020/05/26 Python
python动态规划算法实例详解
2020/11/22 Python
加拿大在线眼镜零售商:SmartBuyGlasses加拿大
2019/05/25 全球购物
Linux文件系统类型
2012/02/15 面试题
药学专业大学生个人的自我评价
2013/11/04 职场文书
车工岗位职责
2013/11/26 职场文书
学校党员对照检查材料
2014/08/28 职场文书
2014年建筑工程工作总结
2014/12/03 职场文书
2015年污水处理厂工作总结
2015/05/26 职场文书
CSS3 制作的彩虹按钮样式
2021/04/11 HTML / CSS