”httpready” Accept Filter

FreeBSD下使用ports安装apache22会出现类似的warming:
No such file or directory: Failed to enable the ”httpready” Accept Filter

解决方法是:
#kldload accf_http

并将/boot/defaults/loader.conf中,以便下次启动自动装载模块
accf_data_load="YES"
accf_http_load="YES"

个人觉得这好像是一个apache22的bug,不能启动FreeBSD自带的一个基于http端口过滤的模块。这个模块的作用很不错——检查HTTP请求是否完整,符合规则accpt一个Http进程,
否则就扔掉。

linux下也有一个类似的东西,工作在 accept 的 socket 上面。代码:

val = 5;      setsockopt(srv_socket->fd, SOL_TCP, TCP_DEFER_ACCEPT, &val, sizeof(val)) ;
anyShare分享到:
          

,

  1. #1 by Sutra on 2007年09月12日 - 21:37

    应该在 /boot/loader.conf 里增加来覆盖defaults中的定义。不建议直接修改吧,呵呵。

(will not be published)
*