我使用CGI Perl将文件上传到我的服务器。该脚本有效,当我检查目录时它会上传文件。但页面每次都会显示此错误。
我有一个有效的文件名检查等。
#!/usr/bin/perl
use strict;
use CGI;
use CGI::Carp qw ( fatalsToBrowser );
use File::Basename;
my $upload_to = "/home/username/public_html/uploads";
my $query = new CGI;
my $picture = $query->param("picture");
my $picture_handle = $query->upload("picture");
open( UPLOADFILE, ">$upload_to/$picture");
binmode UPLOADFILE;
while ( <$picture_handle> )
{
print UPLOADFILE;
} close UPLOADFILE;
print '<html>';
print '<body>';
print '<h1>Upload Successfull!</h1>';
print '</body>';
print '</html>';
这是错误。
内部服务器错误
服务器遇到内部错误或配置错误,无法完成您的请求。
请与服务器管理员联系,请求@ domain并告知错误发生的时间以及可能导致错误的任何操作。
服务器错误日志中可能提供了有关此错误的更多信息。
答案 0 :(得分:4)
您需要打印 HTTP标头。
print $query->header();
print '<html>';
print '<body>';
print '<h1>Upload Successfull!</h1>';
print '</body>';
print '</html>';