我正在试图弄清楚是否可以配置网络服务器,以便延迟提供文件请求。因此,例如,如果我要提供此文件http://www.example.url/picture.jpg,我希望数据传输仅在请求发出后2秒开始......或任何其他任意数字。重要的是,这应该独立于文件的访问方式,因此只是一个HTML解决方案是行不通的。
我在superuser.com上问了一下,那里的人建议我调查perl或php,把这些东西放在一起,这样可以为我提供所需的功能。现在我对上述任何一种语言没有任何经验,但我认为将这些语言放在一起并不会太复杂,我的问题是......有人可以帮助我开始吗?
感谢您的时间。
答案 0 :(得分:1)
如果您将Apache2与mod_perl一起使用,那么您可以使用handlers
之一进行此过滤。但是,即使以下代码为例,您也需要熟悉perl和服务器配置:
package ImgPause;
use Apache2::RequestRec();
use Apache2::Const -compile => qw(FORBIDDEN OK);
use strict;
use warnings;
our %images = (
'/adesert.jpg' => 4,
'/afish.jpg' => 4,
'/aflower.jpg' => 4,
'/ahouse.jpg' => 4,
'/akoala.jpg' => 4,
'/apenguin.jpg' => 4,
'/atulip.jpg' => 5,
)
sub handler {
my $r = shift;
my $host = $r->header_in('Host');
my $uri = $r->uri;
if ($images{$uri}) {
sleep $images{$uri};
}
return Apache2::Const::OK;
}
1;
__END__