FreeBSD中Apache故障

服务器操作系统:FreeBSD7.前端Nginx 后端Apache22(通过FreeBSD的Ports安装)

这段时间服务器老是提示Nginx 502 Bad Gateway错误,经检查前端Nginx正常,后端Apache卡死,拒绝一切连接。必须重启后端Apache才恢复。查询日志有如下内容,网上搜索说是在FreeBSD下使用ports安装apache22会出现类似的warming:

    Failed to enable the 'httpready' Accept Filter

据说这是Apache21和FreeBSD之间Bug!

解决方法是:

    #kldload accf_http

并在/boot/defaults/loader.conf中添加如下内容,以便下次启动自动装载模块

    accf_data_load="YES"
    accf_http_load="YES"

Apache会卡死是因为FreeBSD自带的一个基于http端口过滤的模块不能加载。这个模块的作用是检查HTTP请求是否完整,如果请求是符合规则的则通过,反之就扔掉。

    [Fri Jan 22 00:54:49 2010] [error] [client 218.93.17.38] File does not exist: /usr/local/www/apache22/data/qqblog
    [Fri Jan 22 00:54:49 2010] [error] [client 220.181.94.221] File does not exist: /usr/local/www/apache22/data/html
    [Fri Jan 22 12:24:11 2010] [warn](22)Invalid argument: Failed to enable the 'httpready' Accept Filter
    [Fri Jan 22 12:24:12 2010] [notice] Digest: generating secret for digest authentication ...
    [Fri Jan 22 00:54:49 2010] [error] [client 218.93.17.38] File does not exist: /usr/local/www/apache22/data/qqblog
    [Fri Jan 22 00:54:49 2010] [error][client 220.181.94.221] File does not exist: /usr/local/www/apache22/data/html


「倘若有所帮助,不妨酌情赞赏!」

Holmesian

感谢您的支持!

使用微信扫描二维码完成支付


相关文章

发表新评论
暂无评论
  1. 久酷

    我那儿之前也总出现502 是php的问题了解 那是因为FastCGI配置的问题 这里提到的这个问题不是那一类

    说到底纯粹是Apache的问题

    久酷 回复
  2. zoooro

    只用过ubantu (没拼错吧~~~)如果说的是Ubuntu的话 那就是拼错了…… 呵呵

    Ubuntu Server版的话一般般 还过得去
    做服务器一般Linux我选CentOS
    Unix就选FreeBSD啦 呵呵

    zoooro 回复