项目

通用

个人资料

操作

发布信息

  • 版本: 1.4.62
  • 上一版本: 1.4.61
  • 分支: 1.4
  • 状态: 稳定
  • 发布目的: 错误修复
  • 发布经理: gstrauss
  • 发布日期: 2021-12-01

1.4.61 版本的重要变更

  • 支持 pcre2;HTTP Digest 认证用户哈希;错误修复

下载

未来计划的行为变更(预计 2022 年 1 月):

  • 平滑重启/关机的默认超时将从
    0(无限/无超时)变更为 5 秒(或类似的非零时间)
    通过以下方式配置替代选项
    server.feature-flags += ("server.graceful-shutdown-timeout" => 5)
  • lighttpd 对 libev 和 FAM 的(可选)依赖项已弃用。
    lighttpd 事件循环和文件监控使用原生操作系统接口
    除非在冷门平台上。FAM 和 gamin 似乎已被放弃。
    Linux 和 *BSD 上的软件包维护者
    请从软件包构建中移除 --with-libev 和 --with-fam
    lighttpd 在 Linux 上使用 epoll(),在 *BSD 上使用 kqueue() 进行事件通知。
    lighttpd 在 Linux 上使用 inotify(),在 *BSD 上使用 kqueue() 进行文件监控。
  • lighttpd 将默认使用 --with-pcre2 而非 --with-pcre
    pcre2 是当前版本。pcre 已不再维护。
    在构建时明确指定 --with-pcre 以使用 pcre 而非 pcre2。

https://wiki.lighttpd.net/Docs_ConfigurationOptions#Deprecated

  • mod_compress 已弃用;请使用 mod_deflate
    mod_compress 已被 mod_deflate 替代
    注意: mod_compress 的配置选项可能会在未来版本中移除
  • mod_geoip 已弃用;请使用 mod_maxminddb
    注意: mod_geoip 将在 lighttpd 的未来版本中移除
  • mod_authn_mysql 已弃用;请使用 mod_authn_dbi
    注意: mod_authn_mysql 将在 lighttpd 的未来版本中移除
  • mod_mysql_vhost 已弃用;请使用 mod_vhostdb_dbi 或 mod_vhostdb_mysql
    注意: mod_mysql_vhost 将在 lighttpd 的未来版本中移除
  • mod_cml 已弃用;请使用 mod_magnet
    注意: mod_cml 将在 lighttpd 的未来版本中移除
  • mod_flv_streaming 已弃用;(Adobe Flash 视频 (.flv))
    注意: mod_flv_streaming 将在 lighttpd 的未来版本中移除
    (注意: 可以用几行 Lua 代码和 mod_magnet 替换)
    (示例脚本 flv-streaming.lua 发布于
    https://redmine.lighttpd.ac.cn/projects/lighttpd/wiki/ModMagnetExamples )
    Adobe Flash 已弃用,现代客户端已移除对其的支持
  • mod_trigger_b4_dl 已弃用;请使用 mod_magnet
    注意: mod_trigger_b4_dl 将在 lighttpd 的未来版本中移除
    (注意: 可以用几行 Lua 代码和 mod_magnet 替换)
    (示例脚本 mod_trigger_b4_dl.lua 发布于
    https://redmine.lighttpd.ac.cn/projects/lighttpd/wiki/ModMagnetExamples )

1.4.61 版本的变更

  • [mod_alias] 修复 use-after-free 错误(修复 #3114
  • [核心] 清理 fdlog_st 和 log_error_st 声明
  • [核心] 'struct log_error_st' -> 'log_error_st'
  • [核心] 移除冗余断言
  • [核心] 显式包含 sys/cdefs.h
  • [测试] t/test_mod_ssi
  • [核心] fdevent_socket_nb_cloexec_init()
  • [核心] fdevent_impl.c 从 fdevent.c 中分离
  • [核心] 将 fdevent 实现合并到 fdevent_impl.c 中
  • [核心] fdevent_fdnode.c 从 fdevent.c 中分离
  • [核心] 更快地关闭后端套接字 fd
  • [核心] 如果 cq 长度 > 16k,在 TLS 中使用 TCP_CORK
  • [核心] 如果动态模块在 mod_auth 之前,则发出警告
  • [mod_cgi] 关闭前检查 fd-to-cgi 是否不为 -1
  • [核心] libev EV_ERROR 与 kqueue 冲突
  • [测试] 在 cmake 中禁用 test_mod_ssi(临时)
  • [测试] 在 cmake 中禁用 test_mod_ssi(临时)
  • [测试] 在 cmake 中重新启用 test_mod_ssi
  • [核心] 反向运行插件清理钩子
  • [核心] 修复测试时 server.pid-file 的移除问题(修复 #3115
  • [文档] 改进示例配置
  • [文档] 展开 vhosts.template
  • [文档] 改进示例配置
  • [核心] 在 vector.[ch] 中使用 ck_assert()
  • [测试] mod_ssi 测试已移至 src/t/test_mod_ssi
  • [mod_ssi] 在 ssi_ctx_t 中 0 初始化 ssi_val_t
  • [mod_ssi] 修复旧错误;替换条件解析器
  • [mod_ssi] 移除 mod_ssi 解析器生成器文件
  • [mod_ssi] 将 mod_ssi_expr.c 合并到 mod_ssi.c 中
  • [核心] uint_fast32_t 微调
  • [核心] 更好的二进制数到 ASCII 字符串汇编
  • [测试] t/test_mod 现在运行所有 t/test_mod_*.c
  • [测试] t/test_mod_alias.c
  • [测试] 从 tests/lighttpd.conf 中移除未使用的模块
  • [mod_evasive] 更小的测试函数
  • [测试] t/test_mod_evasive.c
  • [mod_evasive] 更新注释以添加引用
  • [测试] 将测试合并到 test_common.c 中
  • [核心] get_http_method_key() 微调
  • [mod_dirlisting] 在启动时检查是否禁用缓存
  • [核心] buffer_append_string_encoded_json()
  • [mod_dirlisting] (实验性) json (已禁用)
  • [测试] t/test_mod 在 Debian 上需要 -ldl
  • [核心] 仅在使用时保存配置正则表达式捕获
  • [核心] 在 config_pcre_match 中保存 pcre 结果状态
  • [核心] 除非保存捕获,否则 pcre_exec 使用堆栈
  • [核心] 扩展 pcre_keyvalue_ctx 以传递更多状态
  • [核心] pcre2 支持 (--with-pcre2)
  • [核心] 如果需要,少分配一个 cond_match_t
  • [核心] 按需分配 pcre 输出向量
  • [构建] configure.ac 使用 AC_PROG_CC_C99(修复 #3116
  • [构建] CI 构建现在使用 pcre2(升级 pcre)
  • [核心] 修复 32 位构建中的编译器警告
  • [构建] 修复 CMake pcre2 检测
  • [mod_auth] RFC7616 HTTP Digest 用户名* 用户哈希
  • [mod_dirlisting] 修复不显示 HEADER.txt 的错误
  • [测试] t/test_mod_ssi 调整以跟随符号链接
  • [mod_auth] 消除 Coverity 警告
  • [文档] 刷新/更新文档中的依赖项列表
  • [核心] 修复使用 lighttpd -1 和管道时的崩溃问题(修复 #3117

外部引用

gstrauss3 年多前 更新 · 1 次修订