Embedded lighttpd中的FastCGI授权人支持中断? 我正在使用LtTPD的FASCGI编写C++的WebApp。我之所以这样做是因为最终产品将在嵌入式设备上运行。最初,我不知道FCGI模式;我以为一切基本上都是回应者。然后我了解了授权人,我一直在尝试支持它

Embedded lighttpd中的FastCGI授权人支持中断? 我正在使用LtTPD的FASCGI编写C++的WebApp。我之所以这样做是因为最终产品将在嵌入式设备上运行。最初,我不知道FCGI模式;我以为一切基本上都是回应者。然后我了解了授权人,我一直在尝试支持它,embedded,webserver,authorization,fastcgi,lighttpd,Embedded,Webserver,Authorization,Fastcgi,Lighttpd,Lighttpd似乎在将授权者放在静态内容前面没有问题,但当我试图保护另一个FCGI脚本时,它给了我403禁止 我做了很多研究,得出了一些结论: 因为从授权人到后续FCGIs的传递被中断。第一个链接有一个补丁,但是补丁和编译FCGI将是一件痛苦的事情,因为我必须为x86和ARM做这件事,然后我必须支持它。(我们目前正在使用一个广告,这样我们就不必处理这样的事情。) 第一个链接中的语言意味着您可以使用授权人保护动态内容,但实际情况并非如此。当然,一向乐于助人的斯特布勒没有发表评论就关闭了这家公司。

Lighttpd似乎在将授权者放在静态内容前面没有问题,但当我试图保护另一个FCGI脚本时,它给了我403禁止

我做了很多研究,得出了一些结论:

  • 因为从授权人到后续FCGIs的传递被中断。第一个链接有一个补丁,但是补丁和编译FCGI将是一件痛苦的事情,因为我必须为x86和ARM做这件事,然后我必须支持它。(我们目前正在使用一个广告,这样我们就不必处理这样的事情。)
  • 第一个链接中的语言意味着您可以使用授权人保护动态内容,但实际情况并非如此。当然,一向乐于助人的斯特布勒没有发表评论就关闭了这家公司。(我知道他有很多事要做。)
  • 作为记录,我使用lighttpd 1.4.28(桌面和ARM)和自定义身份验证(使用SHA-512在客户机上散列密码),因为(1)TLS对于此应用程序是不可能/不必要的,(2)基本HTTP身份验证不够好,(3)lighttpd中的摘要身份验证被破坏,以及(4)无论如何,这并不是一个真正的安全系统

    以下是我的lighttpd.conf文件的相关部分:

    fastcgi.server = (
      "main.fcgi" =>
        (( "mode"         => "responder",
           "bin-path"     => "/var/fcgi/main.fcgi",
           "socket"       => "/tmp/fcgi.sock",
           "check-local"  => "disable",
           "max-procs"    => 1
        )),
      "/" =>
        (( "mode"         => "authorizer",
           "bin-path"     => "/var/fcgi/auth.fcgi",
           "socket"       => "/tmp/fcgi.sock",
           "check-local"  => "disable",
           "max-procs"    => 1,
           "docroot"      => "/var/fcgi"
        ))
    )
    

    总而言之,有谁能给我一些指导,告诉我如何使用FCGI授权程序来控制对lighttpd上其他FCGI脚本(/二进制文件)的访问,而不仅仅是静态文件?让变量传递工作起来也很好。谢谢你读到这里

    我所看到的一切似乎都表明FastCGI授权程序无法按照lighttpd中的规范工作。我所做的是在我的普通响应程序代码中实现我自己的授权方案。就我而言,这很好,但更复杂的网站可能真的会感受到这一点带来的痛苦(如果有人对此有更好的答案,请回答,我最终会抽出时间将答案改为你的答案