mkdir('foobar') or die...; my $mode = 0770; chmod $mode, 'foobar' or die...; chown 'www-data', 'sftp', 'foobar' or die...; my $upload_filehandle = $query->upload($upload); open UPLOADFILE, ">$upload_dir/$filename"; binmode UPLOADFILE; while ( <$upload_filehandle> ) { print UPLOADFILE; } close UPLOADFILE; $mode = 0770; chmod $mode, "$upload_dir/$filename";