0

我需要使用 httpd.conf 对 HTTP 请求应用一些规则。这就是我正在做的事情。

  1. 我正在使用 perl cgi 程序来处理 HTTP 请求。在做了一些初步验证后,我试图为用户下载文件print("Location: /app/download/filename1\n");
  2. 我需要控制对这个目录 /app/download/ 的访问,这样只有这个 cgi 程序才能下载文件,但是当用户直接点击 url http://example.com/app/download/filename下载不应该被允许。

请提出任何技术来实现这一点。

4

1 回答 1

0

只需将文件存储在 www 根目录之外,然后使用 CGI 脚本读取文件并返回带有正确 http 标头的文件内容。这适用于轻负载。

如果您使用 Location 标头重定向用户请求,那么您将无法限制对直接文件读取的访问。您可以尝试使用引荐来源网址限制 .httaccess 文件的访问。

SetEnvIfNoCase Referer "regexp_to_your_web_page" allowit

<Files *>
order allow,deny
allow from env=allowit
deny from all
</Files> 

看更多:

http://www.webmasterworld.com/forum92/1233.htm

http://httpd.apache.org/docs/2.0/mod/core.html#limit

问候,

于 2013-01-07T11:25:30.717 回答