简单的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加密方法小结【md5,base64,sha1】
Jul 13 Python
Python验证文件是否可读写代码分享
Dec 11 Python
Python实现简单http服务器
Apr 12 Python
python实现zabbix发送短信脚本
Sep 17 Python
python抓取搜狗微信公众号文章
Apr 01 Python
python制作抖音代码舞
Apr 07 Python
更新pip3与pyttsx3文字语音转换的实现方法
Aug 08 Python
python使用rsa非对称加密过程解析
Dec 28 Python
Python如何把Spark数据写入ElasticSearch
Apr 18 Python
详解pandas赋值失败问题解决
Nov 29 Python
Python 中Operator模块的使用
Jan 30 Python
利用Python批量识别电子账单数据的方法
Feb 08 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
thinkPHP批量删除的实现方法分析
2016/11/09 PHP
php微信公众平台示例代码分析(二)
2016/12/06 PHP
Laravel中的Blade模板引擎示例详解
2017/10/10 PHP
Jquery 弹出层插件实现代码
2009/10/24 Javascript
解析javascript 浏览器关闭事件
2013/07/08 Javascript
javascript+html5实现仿flash滚动播放图片的方法
2015/04/27 Javascript
基于javascript实现句子翻牌网页版小游戏
2016/03/23 Javascript
AngularJS报错$apply already in progress的解决方法分析
2017/01/30 Javascript
在 Angular 中使用Chart.js 和 ng2-charts的示例代码
2017/08/17 Javascript
JS实现导出Excel的五种方法详解【附源码下载】
2018/03/15 Javascript
浅析前端路由简介以及vue-router实现原理
2018/06/01 Javascript
JavaScript原型对象、构造函数和实例对象功能与用法详解
2018/08/04 Javascript
详解webpack自定义loader初探
2018/08/29 Javascript
JavaScript中七种流行的开源机器学习框架
2018/10/11 Javascript
vue的hash值原理也是table切换实例代码
2020/12/14 Vue.js
利用QT写一个极简单的图形化Python闹钟程序
2015/04/07 Python
wxPython中listbox用法实例详解
2015/06/01 Python
使用Python解析JSON数据的基本方法
2015/10/15 Python
使用Python paramiko模块利用多线程实现ssh并发执行操作
2019/12/05 Python
利用keras加载训练好的.H5文件,并实现预测图片
2020/01/24 Python
python输出结果刷新及进度条的实现操作
2020/07/13 Python
使用python操作lmdb对数据读取的实例
2020/12/11 Python
Grid 宫格常用布局的实现
2020/01/10 HTML / CSS
Qoo10台湾站:亚洲领先的在线市场
2018/05/15 全球购物
.NET面试10题
2014/02/24 面试题
linux面试题参考答案(5)
2016/11/05 面试题
自考毕业自我鉴定范文
2013/10/27 职场文书
七年级生物教学反思
2014/01/30 职场文书
财务总监管理职责范文
2014/03/09 职场文书
俞敏洪一分钟演讲稿
2014/08/26 职场文书
2014年大学团支部工作总结
2014/12/02 职场文书
会议欢迎词
2015/01/23 职场文书
毕业论文答辩稿范文
2015/06/23 职场文书
百年孤独读书笔记
2015/06/29 职场文书
python实现调用摄像头并拍照发邮箱
2021/04/27 Python
动态规划之使用备忘录来改进Javascript函数
2022/04/07 Javascript