通过mod_python配置运行在Apache上的Django框架


Posted in Python onJuly 22, 2015

为了配置基于 mod_python 的 Django,首先要安装有可用的 mod_python 模块的 Apache。 这通常意味着应该有一个 LoadModule 指令在 Apache 配置文件中。 它看起来就像是这样:

LoadModule python_module /usr/lib/apache2/modules/mod_python.so

Then, edit your Apache configuration file and add a <Location> directive that ties a specific URL path to a specific Django installation. 例如:

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

要确保把 DJANGO_SETTINGS_MODULE 中的 mysite.settings 项目换成与你的站点相应的内容。

它告诉 Apache,任何在 / 这个路径之后的 URL 都使用 Django 的 mod_python 来处理。 它 将 DJANGO_SETTINGS_MODULE 的值传递过去,使得 mod_python 知道这时应该使用哪个配置。

注意这里使用 ```` 指令而不是 ```` 。 后者用于指向你的文件系统中的一个位置,然而 ````

System Message: WARNING/2 (<string>, line 403); backlink

Inline literal start-string without end-string.

System Message: WARNING/2 (<string>, line 403); backlink

Inline literal start-string without end-string.

System Message: WARNING/2 (<string>, line 403); backlink

Inline literal start-string without end-string.

System Message: WARNING/2 (<string>, line 403); backlink

Inline literal start-string without end-string.

System Message: ERROR/3 (<string>, line 405)

Unexpected indentation.

    指向一个 Web 站点的 URL 位置。 ````

System Message: WARNING/2 (<string>, line 405); backlink

  Inline literal start-string without end-string.

  System Message: WARNING/2 (<string>, line 405); backlink

  Inline literal start-string without end-string.

Apache 可能不但会运行在你正常登录的环境中,也会运行在其它不同的用户环境中;也可能会有不同的文件路径或 sys.path。 你需要告诉 mod_python 如何去寻找你的项目及 Django 的位置。

PythonPath "['/path/to/project', '/path/to/django'] + sys.path"

你也可以加入一些其它指令,比如 PythonAutoReload Off 以提升性能。 查看 mod_python 文档获得详细的指令列表。

注意,你应该在成品服务器上设置 PythonDebug Off 。如果你使用 PythonDebug On 的话,在程序产生错误时,你的用户会看到难看的(并且是暴露的) Python 回溯信息。 如果你把 PythonDebug 置 On,当mod_python出现某些错误,你的用户会看到丑陋的(也会暴露某些信息)Python的对错误的追踪的信息。

重启 Apache 之后所有对你的站点的请求(或者是当你用了 <VirtualHost> 指令后则是虚拟主机)都会由 Djanog 来处理。

Python 相关文章推荐
Python中的测试模块unittest和doctest的使用教程
Apr 14 Python
Python类属性的延迟计算
Oct 22 Python
由浅入深讲解python中的yield与generator
Apr 05 Python
python技能之数据导出excel的实例代码
Aug 11 Python
Python实现PS滤镜中马赛克效果示例
Jan 20 Python
django加载本地html的方法
May 27 Python
在IPython中执行Python程序文件的示例
Nov 01 Python
Python列表切片操作实例总结
Feb 19 Python
Python3.5装饰器原理及应用实例详解
Apr 30 Python
解决pyqt5异常退出无提示信息的问题
Apr 08 Python
Django ORM filter() 的运用详解
May 14 Python
一文详述 Python 中的 property 语法
Sep 01 Python
在Django中同时使用多个配置文件的方法
Jul 22 #Python
在Python的Django框架中编写错误提示页面
Jul 22 #Python
详解Django通用视图中的函数包装
Jul 21 #Python
在Python的Django框架中显示对象子集的方法
Jul 21 #Python
在Django的通用视图中处理Context的方法
Jul 21 #Python
Django框架中的对象列表视图使用示例
Jul 21 #Python
在Python的Django框架中使用通用视图的方法
Jul 21 #Python
You might like
PHP与MySQL交互使用详解
2006/10/09 PHP
php数据入库前清理 注意php intval与mysql的int取值范围不同
2010/12/12 PHP
PHP实现显示照片exif信息的方法
2014/07/11 PHP
php跨站攻击实例分析
2014/10/28 PHP
8个必备的PHP功能开发
2015/10/02 PHP
PHP convert_cyr_string()函数讲解
2019/02/13 PHP
PHP程序员简单的开展服务治理架构操作详解(三)
2020/05/14 PHP
phpstudy2020搭建站点的实现示例
2020/10/30 PHP
JavaScript Event学习第五章 高级事件注册模型
2010/02/07 Javascript
JS 文件大小判断的实现代码
2010/04/07 Javascript
node.js中的favicon.ico请求问题处理
2014/12/15 Javascript
基于JS实现textarea中获取动态剩余字数的方法
2016/05/25 Javascript
浅谈jquery高级方法描述与应用
2016/10/04 Javascript
微信小程序 页面之间传参实例详解
2017/01/13 Javascript
Angular2自定义分页组件
2017/04/19 Javascript
vue.js实现刷新当前页面的方法教程
2017/07/05 Javascript
关于Angularjs中跨域设置白名单问题
2018/04/17 Javascript
Vue 中对图片地址进行拼接的方法
2018/09/03 Javascript
重学 JS:为啥 await 不能用在 forEach 中详解
2019/04/15 Javascript
微信小程序使用 vant Dialog组件的正确方式
2020/02/21 Javascript
vue实现购物车的小练习
2020/12/21 Vue.js
python实现猜数字游戏(无重复数字)示例分享
2014/03/29 Python
记录Django开发心得
2014/07/16 Python
python基础教程之序列详解
2014/08/29 Python
Python实现二叉堆
2016/02/03 Python
漂亮的Django Markdown富文本app插件的实现
2019/01/02 Python
基于python生成英文版词云图代码实例
2020/05/16 Python
解析Tensorflow之MNIST的使用
2020/06/30 Python
css3实现文字首尾衔接跑马灯的示例代码
2020/10/16 HTML / CSS
土耳其玩具商店:Toyzz Shop
2019/08/02 全球购物
轻化专业学生实习自我鉴定
2013/09/20 职场文书
幼师辞职信怎么写
2015/02/27 职场文书
2015年暑期社会实践方案
2015/07/14 职场文书
2016年中学植树节活动总结
2016/03/16 职场文书
mysql知识点整理
2021/04/05 MySQL
剑指Offer之Java算法习题精讲二叉树的构造和遍历
2022/03/21 Java/Android