当前位置: 首页 > 图文教程 > 服务器 > Linux服务器 > ubuntu lighttpd+webpy (fastcgi)配置方法

Linux服务器
浅谈Linux文件系统反删除方法(二)
JFS 文件系统概述及布局分析(一)
JFS 文件系统概述及布局分析(二)
JFS 文件系统概述及布局分析(三)
JFS 文件系统概述及布局分析(四)
JFS 文件系统概述及布局分析(五)
JFS 文件系统概述及布局分析(六)
Linux环境下的高级隐藏技术
OpenVPN在Linux下的安装配置和使用简介
Grub安装、配置以及使用实例汇总讲解(一)
Grub安装、配置以及使用实例汇总讲解(二)
Grub安装、配置以及使用实例汇总讲解(三)
Fedora Linux下的远程控制软件Rdesktop
Linux系统上SubVersion定期备份完整脚本
Linux操作系统下字符集转换工具:iconv
双Linux和多Linux操作系统的安装方法介绍
Linux操作系统下VPN服务器配置方法介绍
Ubuntu Linux与Windows系统多启动的配置
看清Linux应用的六大误区
BSD家族大观:FreeBSD、OpenBSD、NetBSD

Linux服务器 中的 ubuntu lighttpd+webpy (fastcgi)配置方法


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-04   浏览: 499 ::
收藏到网摘: n/a

首先安装 lighttpd 和 webpy,因为用 kpackagekit 做软件管理,在安装 webpy 的时候会自动安装 flup lighttpd 的配置脚本在 /etc/lighttpd/lighttpd.conf,采用默认值
缺省的server.document-root路径是 /var/www
具体实施步骤:
1) 首先实现一个 python 脚本
touch /var/www/hello.py
chmod 755 /var/www/hello.py
vim /var/www/hello.py
复制代码 代码如下:

#!/usr/bin/env python
import web
urls = (
'/hello', 'hello', '/hello/(.*)$', 'hello'
)
app = web.application(urls, globals())
class hello:
def GET(self, name=None):
if not name:
name = 'world'
return 'Hello, ' + name + '!'
if __name__ == "__main__":
app.run()

2) 配置 fastcgi
vim /etc/lighttpd/conf-available/10-fastcgi.conf
复制代码 代码如下:

server.modules += ( "mod_fastcgi" )
fastcgi.server = ("/hello" =>
((
"bin-path" => "/var/www/hello.py",
"socket" => "/tmp/hello.py.socket",
"max-procs" => 1,
"bin-environment" => (
"REAL_SCRIPT_NAME" => ""
),
"check-local" => "disable"
))
)

3) 启用 fastcgi
lighttpd-enable-mod fastcgi
4) 重启 lighttpd
/etc/init.d/lighttpd force-reload
5) 在浏览器中验证结果
http://localhost/hello 得到的结果是 Hello, world!
http://localhost/hello/sendltd 得到的结果是 Hello, sendltd!
6) 补充说明
这样配置静态页面和动态页面可以共存,不需要配置 mod_rewrite。
每次修改 python 脚本都要重启lighttpd。
可以在 10-fastcgi.conf 中 配置多个sever,但是socket不能相同 。
[l参考链接]
http://redmine.lighttpd.net/projects/lighttpd/wiki/Docs:ModFastCGI http://redmine.lighttpd.net/projects/lighttpd/wiki/Docs:ConfigurationOptions