查看: 49|回复: 0

[Ubuntu] ubuntu lighttpd+webpy (fastcgi)配置方法

[复制链接]

3

主题

0

回帖

0

积分

热心网友

金币
0
阅读权限
220
精华
0
威望
0
贡献
0
在线时间
0 小时
注册时间
2010-12-22
发表于 2023-8-21 00:00:00 | 显示全部楼层 |阅读模式

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

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

相关侵权、举报、投诉及建议等,请发 E-mail:qiongdian@foxmail.com

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部