Perl无法在服务器上写文件

时间:2013-08-23 08:03:40

标签: perl web iis-7

我有一个带有文字的文件 in.txt 我在Windows上使用IIS 7本地服务器。和 isapiModule 对perl工作正常。
当我通过浏览器运行这个perl代码时,它打印到浏览器只是打印行(而不是数据)但不是写入文件 out.txt 而只是打开空文件 out.txt (即无法通过浏览器写入) 我的wwwroot文件夹具有所有用户的完全控制权限。

HTML代码:

<html>
<body>

<form name="form1" action="perl.pl" method="post"
enctype="multipart/form-data">
<input type="submit" name="submit" value="Submit">
</form>

</body>
</html> 

perl.pl:

open(file,"<in.txt");
@x=<file>;
open(OUT,">out.txt");
print"print to browser...";
print OUT"@x\n";#for printing to file
close file;
close OUT;

可能是什么原因和解决方案。

UPDATE:程序在通过命令驱动器手动运行时正在写入。

1 个答案:

答案 0 :(得分:0)

你尝试过这样的事吗?

#!/usr/bin/perl -w
use strict; 


my $in = 'in.txt';
open my $file, '<', $in or die "Can't open $in\n";

my $outfile = 'out.txt';
open my $outprint, '>', $outfile or die "Can't write to $outfile\n";


print "print to browser…\n";
while (<$file>) { 
    chomp;
    print $outprint "$_\n"; 
}