通过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 相关文章推荐
Python2与python3中 for 循环语句基础与实例分析
Nov 20 Python
python根据unicode判断语言类型实例代码
Jan 17 Python
Python3.5 创建文件的简单实例
Apr 26 Python
python计算两个地址之间的距离方法
Jun 09 Python
Python 删除整个文本中的空格,并实现按行显示
Jul 24 Python
在Pycharm中项目解释器与环境变量的设置方法
Oct 29 Python
python3 打印输出字典中特定的某个key的方法示例
Jul 06 Python
基于pytorch的保存和加载模型参数的方法
Aug 17 Python
python统计指定目录内文件的代码行数
Sep 19 Python
win10安装tesserocr配置 Python使用tesserocr识别字母数字验证码
Jan 16 Python
python suds访问webservice服务实现
Jun 26 Python
怎么解决pycharm license Acti的方法
Oct 28 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
德生S2000南麂列岛台湾FM收听记录
2021/03/02 无线电
PHP读MYSQL中文乱码的解决方法
2006/12/17 PHP
PHP MYSQL乱码问题,使用SET NAMES utf8校正
2009/11/30 PHP
php读取mysql乱码,用set names XXX解决的原理分享
2011/12/29 PHP
PHP判断搜索引擎蜘蛛并自动记忆到文件的代码
2012/02/04 PHP
php判断变量类型常用方法
2012/04/24 PHP
php命令行用法入门实例教程
2014/10/27 PHP
微信公众号开发之通过接口删除菜单
2017/02/20 PHP
双击滚屏-常用推荐
2006/11/29 Javascript
js对列表中第一个值处理与jsp页面对列表中第一个值处理的区别详解
2013/11/05 Javascript
Ext4.2的Ext.grid.plugin.RowExpander无法触发事件解决办法
2014/08/15 Javascript
整理JavaScript对DOM中各种类型的元素的常用操作
2016/05/05 Javascript
bootstrap输入框组代码分享
2016/06/07 Javascript
vue2.0父子组件及非父子组件之间的通信方法
2017/01/21 Javascript
js实现三级联动效果(简单易懂)
2017/03/27 Javascript
为你的微信小程序体积瘦身详解
2017/05/20 Javascript
关于vue-router的beforeEach无限循环的问题解决
2017/09/09 Javascript
JS实现带导航城市列表以及输入搜索功能
2018/01/04 Javascript
JavaScript面向对象中接口实现方法详解
2019/07/24 Javascript
微信小程序实现一张或多张图片上传(云开发)
2019/09/25 Javascript
vue 路由缓存 路由嵌套 路由守卫 监听物理返回操作
2020/08/06 Javascript
[36:19]2018DOTA2亚洲邀请赛 小组赛 A组加赛 Newbee vs LGD
2018/04/03 DOTA
[55:18]Liquid vs Chaos 2019国际邀请赛小组赛 BO2 第一场 8.15
2019/08/16 DOTA
[40:53]完美世界DOTA2联赛PWL S3 Magma vs DLG 第二场 12.18
2020/12/20 DOTA
Python判断操作系统类型代码分享
2014/11/22 Python
Python AES加密模块用法分析
2017/05/22 Python
python3实现斐波那契数列(4种方法)
2019/07/15 Python
Python BeautifulReport可视化报告代码实例
2020/04/13 Python
编写一子程序,将一链表倒序,即使链表表尾变表头,表头变表尾
2016/02/10 面试题
市场营销个人求职信范文
2014/02/02 职场文书
寄语学生的话
2014/04/10 职场文书
师范毕业生求职信
2014/07/11 职场文书
2014年社区个人工作总结
2014/12/02 职场文书
新郎新娘致辞
2015/07/31 职场文书
护士爱岗敬业心得体会
2016/01/25 职场文书
小学秋季运动会加油口号及加油稿
2019/08/19 职场文书