我是新手Perl程序员,所以请放轻松我。有没有办法远程重定向页面从调用perl .cgi文件到另一个页面文件?用户将单击指向.cgi文件的链接。然后.cgi文件会将用户重定向到" file://"地点。目的是在记录点击次数后在另一台服务器中下载文件。
以下代码适用于" http://"地址,但如何让它与#34; file://"地址?
#!C:\Strawberry\perl\bin
use strict;
use CGI;
use CGI::Carp qw(fatalsToBrowser);
my $page = new CGI;
# print header and start the markup output
print "HTTP/1.0 200 OK\n";
print $page->header( "text/html" );
print $page->start_html( "CGI Environment" );
print "Hello world! ";
print "Press the Enter key to exit.\n";
my $url="file://location_of_file";
my $t=1; # time until redirect activates
print "<META HTTP-EQUIV=refresh CONTENT=\"$t;URL=$url\">\n";
print $page->end_html;
# end code
这是一个好方法吗?有更好的方法吗?请帮忙。先谢谢你了!
答案 0 :(得分:2)
出于安全原因,不允许这样做。所有浏览器(我知道)都会拒绝从http:// URL到file:// URL的元重定向。同样的限制适用于30x服务器重定向。有关详细信息,请参阅Redirect Restrictions section of the Browser Security Handbook。
答案 1 :(得分:0)
可能最有用的方法是使用&#39; .url&#39;文件(静态或动态生成),在JFish222's post
中很好地解释否则,我担心你会被提升权限(强烈依赖浏览器),或者使用浏览器扩展等等。