mod_perl
提供一种运行 perl 脚本的方法httpd.conf
:
<perl>
...scripts goes here...
</perl>
我该如何配置httpd.conf
以便只有查询字符串中<perl></perl>
有参数时里面的脚本才会运行?flag
答案1
使用 Perl 评估 query_string,然后if
如果未设置参数则使用语句跳过其余部分。
也许是这样的*:
<perl>
if (length ($ENV{'QUERY_STRING'}) > 0){
$buffer = $ENV{'QUERY_STRING'};
@pairs = split(/&/, $buffer);
foreach $pair (@pairs){
($name, $value) = split(/=/, $pair);
$value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
$in{$name} = $value;
}
}
if (defined $in{'flag'}){
#Your Code here
}
</perl>
*可能还有其他方法可以分解查询字符串,这是我的例子。