免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2395 | 回复: 3
打印 上一主题 下一主题

[C] lighttpd源码问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2015-01-26 11:41 |只看该作者 |倒序浏览
本帖最后由 starwangxp 于 2015-02-03 23:17 编辑

最近看lighttpd源码 (connection_handle_read_state->chunkqueue_get_append_tempfile),如果上传的包体或者文件超出64k,它就会写到临时的不超过1MB的小文件,
不知道lighttpd的用意是什么,为何不直接放到一个大文件 (假如上传几百M的文件)?
这样做fastcgi脚本处理起来是不是很麻烦,它要合并很多小文件并且还要知道这些小文件名称前缀以及排序?
本人菜鸟,请高人解惑一下

论坛徽章:
0
2 [报告]
发表于 2015-02-03 17:26 |只看该作者
本帖最后由 starwangxp 于 2015-02-03 18:06 编辑

这个问题还在pending,自己顶!
又有第二个问题
简单的讲就是lighttpd如何根据请求的uri前缀或者扩展后缀分发/路由给各个fastcgi或者proxy(类似Tomcat的多application)?
比如配置:
$HTTP["url"] =~ "^/foo" {
    proxy.server = ( "" =>
    。。。

$HTTP["url"] =~ "^/bar" {
    fastcgi.server = (
        "" => (
     。。。

$SERVER["socket"] == ":8080" {
   。。。
    fastcgi.server = (
        ".php" => (
    。。。

论坛徽章:
0
3 [报告]
发表于 2015-02-03 23:16 |只看该作者
本帖最后由 starwangxp 于 2015-02-04 11:03 编辑

囧,自问自答吧,粗看第二个问题的大概流程:
http_response_prepare() -> config_patch_connection(srv, con, COMP_HTTP_URL) 这边有匹配$HTTP["url"] (调config_check_cond())并且合并配置一些server级配置(例如document_root)的动作,
请求过来进入fcgi_check_extension() 继续调用fastcgi版本的config_patch_connection(),会匹配url并合并fastcgi模块级的配置,如fastcgi.server
由此可见模块级的配置会覆盖server级配置?相较之下,nginx应该更加灵活
很多细节还没有来得及仔细看,还请熟悉lighty的朋友指正

论坛徽章:
0
4 [报告]
发表于 2015-03-09 17:17 |只看该作者
本帖最后由 xiaozhi4364 于 2015-03-09 17:23 编辑

你好
最近也苦恼这个lighttpd的webdav的上传问题,总是写在缓存里面想直接改变缓存的路径到正常文件的路径,这样缓存和实际文件就没区别,希望交流下,qq258031823
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP