0

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>';

これがエラーです。

内部サーバーエラー

サーバーで内部エラーまたは構成ミスが発生したため、リクエストを完了できませんでした。

サーバー管理者 request@domain に連絡して、エラーが発生した時刻と、エラーの原因となった可能性のある操作を知らせてください。

このエラーの詳細については、サーバー エラー ログを参照してください。

4

1 に答える 1

4

HTTP ヘッダーを出力する必要があります。

print $query->header();
print '<html>';
print '<body>';
print '<h1>Upload Successfull!</h1>';
print '</body>';
print '</html>';
于 2013-11-02T16:48:43.833 に答える