lighttpd 1.4.X - 反向代理出错 - 返回0字节 - 配置或程序错误?

时间:2014-09-10 08:10:35

标签: configuration reverse-proxy lighttpd

我有一个设置,我需要在服务器前面的代理。 LightTpd 1.4.13已经在嵌入式平台上使用,它应该充当代理。 由于旧的工具链,较新的lighttpd不易构建。

代理平台的一个端口(例如端口84)应将所有流量转发到服务器上的端口80.

一些简单的页面转发得很好,但其他一些页面失败了。服务器具有" web_resp.exe",它作为0字节的下载选项返回。

Wireshark转储

使用Wireshark转储显示所需的页面发送代理平台,但转发了0个字节。 (这是在类似的设置上进行的)

问题

  1. 我的配置错了吗?
  2. 在lighttpd 1.4.13上是不可能的? (我看过论坛帖子告诉lighttpd的mod_proxy一般有问题)
  3. 重复性

    我通过在新的mintLinux上运行Lighttpd来重现该缺陷(相同的错误类型) 转发到其他ip / site(以太网的web-config - > rs232-port单元)时,我收到同样的错误。

    究竟是什么触发了错误是不知道的,也许只是太大的页面。

    配置

    #lighttpd configuration file
    server.modules              = (
                               "mod_proxy"
        )
    
    ## a static document-root, for virtual-hosting take look at the
    ## server.virtual-* options
    server.document-root        = "/tmp/"
    
    ## where to send error-messages to
    server.errorlog             = "/tmp/lighttpd.error.log"
    
    ## bind to port (default: 80)
    server.port                = 84
    
    #### proxy module
    ## read proxy.txt for more info
    proxy.debug                    = 1
    proxy.server = ( "" =>
                       (    
                ( "host" => "10.0.0.175", "port" => 80)
               )
            )
    

    调试转储

    功能性和非功能性请求似乎相似。 然而,非功能性读取更大尺寸的数据(仍然被认为是小尺寸<100kB)

    其他测试

    为目标编译的lighttpd 1.4.35,但它似乎以同样的方式失败。

    lighttpd 1.4.35既不适用于mintLinux。

    1.4.35 +重写技巧...... 比直接使用端口

    更糟糕

    lighttpd 1.5在mintLinux上开箱即用(在安装gthread2之后)。但是对目标硬件不起作用。

1 个答案:

答案 0 :(得分:0)

发现问题是后端提供的错误的http标头。 该问题已提交给Lighttpd-bug网站https://redmine.lighttpd.net/issues/2594#change-8877

Lighttpd现在支持只发送\ LF而不是\ CR \ LF

的网页

您可能会认为该错误位于目标网页中。但是,我无法修改目标网站。