简单的Apache+FastCGI+Django配置指南


Posted in Python onJuly 22, 2015

在Apache和FastCGI上使用Django,你需要安装和配置Apache,并且安装mod_fastcgi。 请参见Apache和mod_fastcgi文档: http://www.djangoproject.com/r/mod_fastcgi/ 。

当完成了安装,通过 httpd.conf (Apache的配置文件)来让Apache和Django FastCGI互相通信。 你需要做两件事:

  •     使用 FastCGIExternalServer 指明FastCGI的位置。
  •     使用 mod_rewrite 为FastCGI指定合适的URL。

指定 FastCGI Server 的位置

FastCGIExternalServer 告诉Apache如何找到FastCGI服务器。 按照FastCGIExternalServer 文档( http://www.djangoproject.com/r/mod_fastcgi/FastCGIExternalServer/ ),你可以指明 socket 或者 host 。以下是两个例子:

# Connect to FastCGI via a socket/named pipe:
FastCGIExternalServer /home/user/public_html/mysite.fcgi -socket /home/user/mysite.sock

# Connect to FastCGI via a TCP host/port:
FastCGIExternalServer /home/user/public_html/mysite.fcgi -host 127.0.0.1:3033

在这两个例子中, /home/user/public_html/ 目录必须存在,而 /home/user/public_html/mysite.fcgi 文件不一定存在。 它仅仅是一个Web服务器内部使用的接口,这个URL决定了对于哪些URL的请求会被FastCGI处理(下一部分详细讨论)。 (下一章将会有更多有关于此的介绍)
使用mod_rewrite为FastCGI指定URL

第二步是告诉Apache为符合一定模式的URL使用FastCGI。 为了实现这一点,请使用mod_rewrite 模块,并将这些URL重定向到 mysite.fcgi (或者正如在前文中描述的那样,使用任何在 FastCGIExternalServer 指定的内容)。

在这个例子里面,我们告诉Apache使用FastCGI来处理那些在文件系统上不提供文件

<VirtualHost 12.34.56.78>
 ServerName example.com
 DocumentRoot /home/user/public_html
 Alias /media /home/user/python/django/contrib/admin/media
 RewriteEngine On
 RewriteRule ^/(media.*)$ /$1 [QSA,L]
 RewriteCond %{REQUEST_FILENAME} !-f
 RewriteRule ^/(.*)$ /mysite.fcgi/$1 [QSA,L]
</VirtualHost>

Python 相关文章推荐
PYTHON正则表达式 re模块使用说明
May 19 Python
Python解惑之整数比较详解
Apr 24 Python
Python基于pygame模块播放MP3的方法示例
Sep 30 Python
TensorFlow深度学习之卷积神经网络CNN
Mar 09 Python
python绘制漏斗图步骤详解
Mar 04 Python
详解用Python为直方图绘制拟合曲线的两种方法
Aug 21 Python
Python如何使用内置库matplotlib绘制折线图
Feb 24 Python
matplotlib.pyplot.matshow 矩阵可视化实例
Jun 16 Python
python怎么判断模块安装完成
Jun 19 Python
Python 的 __str__ 和 __repr__ 方法对比
Sep 02 Python
python 实现简易的记事本
Nov 30 Python
pytorch常用数据类型所占字节数对照表一览
May 17 Python
使用FastCGI部署Python的Django应用的教程
Jul 22 #Python
使用相同的Apache实例来运行Django和Media文件
Jul 22 #Python
在Apache服务器上同时运行多个Django程序的方法
Jul 22 #Python
通过mod_python配置运行在Apache上的Django框架
Jul 22 #Python
在Django中同时使用多个配置文件的方法
Jul 22 #Python
在Python的Django框架中编写错误提示页面
Jul 22 #Python
详解Django通用视图中的函数包装
Jul 21 #Python
You might like
Codeigniter实现智能裁剪图片的方法
2014/06/12 PHP
PHP采用XML-RPC构造Web Service实例教程
2014/07/16 PHP
php使用glob函数快速查询指定目录文件的方法
2014/11/15 PHP
很全的显示阴历(农历)日期的js代码
2009/01/01 Javascript
Array的push与unshift方法性能比较分析
2011/03/05 Javascript
Jquery读取URL参数小例子
2013/08/30 Javascript
jquery插件NProgress.js制作网页加载进度条
2015/06/05 Javascript
使用Browserify配合jQuery进行编程的超级指南
2015/07/28 Javascript
iframe跨域通信封装详解
2015/08/11 Javascript
基于AngularJS前端云组件最佳实践
2016/10/20 Javascript
学习JavaScript图片预加载模块
2016/11/07 Javascript
浅谈EasyUi ComBotree树修改 父节点选择的问题
2016/11/07 Javascript
angularjs ui-router中路由的二级嵌套
2017/03/10 Javascript
ES6新特性之模块Module用法详解
2017/04/01 Javascript
nodejs个人博客开发第二步 入口文件
2017/04/12 NodeJs
JavaScript数据结构学习之数组、栈与队列
2017/05/02 Javascript
JavaScript学习笔记之函数记忆
2017/09/06 Javascript
Vue.js中的computed工作原理
2018/03/22 Javascript
Vue事件处理原理及过程详解
2020/03/11 Javascript
[52:22]EG vs VG Supermajor小组赛B组 BO3 第一场 6.2
2018/06/03 DOTA
python利用hook技术破解https的实例代码
2013/03/25 Python
十个Python程序员易犯的错误
2015/12/15 Python
python小白学习包管理器pip安装
2020/06/09 Python
css3圆角样式分享自定义按钮样式
2013/12/27 HTML / CSS
韩国乐天网上商城:Lotte iMall
2021/02/03 全球购物
Java基础知识面试题
2014/03/25 面试题
人力资源管理专业毕业生推荐信
2013/11/07 职场文书
门诊挂号室室长岗位职责
2013/11/27 职场文书
大学生饮食配送创业计划书
2014/01/04 职场文书
渔夫的故事教学反思
2014/02/14 职场文书
学习标兵获奖感言
2014/02/20 职场文书
便利店促销方案
2014/02/20 职场文书
学校综治宣传月活动总结
2014/07/02 职场文书
财务工作检讨书
2014/10/29 职场文书
合理化建议书
2015/02/04 职场文书
现场施工员岗位职责
2015/04/11 职场文书