Błąd oprogramowania podczas wykonywania skryptu CGI

Mam skrypt cgi do przesłania, który wygląda następująco

#!/usr/bin/perl
use CGI;
use CGI::Carp qw(fatalsToBrowser);

my $cgi = new CGI;
my $file = $cgi->param('file');
$file=~m/^.*(\\|\/)(.*)/; # strip the remote path and keep the filename
my $name = $2;
open(LOCAL, ">/home/Desktop/$name") or die $!;

while(<$file>) {
  $data .= $_;
}
print $cgi->header();
print "$file has been successfully uploaded... thank you.\n";
    print $data;

Plik HTML jest następujący

<html>
<head>
    <title>Test</title>
</head>

<body>
    <form enctype="multipart/form-data" action="upload.cgi" method="post">
    <input type="hidden" name="MAX_FILE_SIZE" value="30000" />
            Send this file: <input name="userfile" type="file" />
<input type="submit" value="Send File" />
</form>
</body>
</html>

Dostaję teraz dziwny błąd ..

Błąd oprogramowania:

Jest katalogiem w linii htdocs / upload.cgi 9.

Aby uzyskać pomoc, wyślij wiadomość do webmastera tej witryny, podając ten komunikat o błędzie oraz godzinę i datę błędu.

questionAnswers(2)

yourAnswerToTheQuestion