in reply to cgi upload files

My bet would be that your script doesn't have permission to write files there, but that's just a guess. You should probably start at Troubleshooting Perl CGI scripts, and add a suitable "or die()" to your attempts to open file handles.