1

我希望通过使用签名 URL 来控制对一些大文件的访问(我们在这里谈论很多 GB)。这些文件当前受 LDAP 基本身份验证 ( mod_auth_ldap) 的限制,但我需要更改它以验证签名(作为 URL 中的查询参数传递)。

基本上,我只需要运行一个脚本来验证签名,并允许请求继续进行,就好像身份验证成功一样。我最初的想法只是使用一个简单的 CGI 脚本,但由于文件太大,我担心性能。所以,真的,这个问题(可能)更像是“通过 Apache 从 CGI 脚本流式传输大文件是否有任何性能影响?”......如果是这样,“有没有更好的方法来做到这一点(没有编写专门的认证模块)?”

如果这有任何意义,将不胜感激帮助:)

PS我不确定要搜索什么(10分钟的谷歌搜索没有结果),所以我很可能会复制别人的帖子。

4

2 回答 2

0

看看 apache 中的加密 cookie/会话 - 一种方法是在该目录上设置一个必须有效的会话限制 - 将没有有效会话限制的任何人转发到 cgi 脚本;在那里进行身份验证-然后转发回实际下载。

这样 apache 就可以使用其正常的 sendfile() 和其他优化。

但是请记住,以简单的 'execvp'、'exec cat' 或类似的东西结尾的 shell 脚本或 perl 脚本并不昂贵。

另一种选择是更多基于 uRL - 例如http://authmemcookie.sourceforge.net/

德。

于 2011-01-04T19:22:16.607 回答
0

我最终用前面提到的 CGI 脚本解决了这个问题……cookie 不是一个选项,因为我们需要能够支持不使用 cookie (apt) 的客户端。

于 2011-01-27T14:43:03.020 回答