У меня странная проблема с PHP. У меня есть PHP-скрипт, который выполняет загрузку файлов на мой сервер, а затем передает их на удаленный сервер. Код правильный, как он работает. Проблема в том, что он не всегда работает. В большинстве случаев он просто возвращает внутреннюю ошибку сервера. Мой журнал ошибок просто говорит, что произошла ошибка 404, но я не делаю никаких команд «Заголовок». Он просто повторяет некоторые HTML и Javascript в Iframe. И когда возникает ошибка, файл обрезается на удаленном сервере, поэтому я действительно не могу понять, где происходит ошибка. Я предполагаю, что это некоторая неправильная конфигурация на моем сервере, потому что я попробовал тот же самый скрипт в MAMP, и он работал отлично, без проблем. Может кто-нибудь помочь мне, по крайней мере, получить ошибку, которую он выдает, чтобы я знал, с чего начать?
Я знаю, что это немного просто, но я не очень разбираюсь в PHP, как и в других языках.
Вот мой код:
<?php
//Uploads a file
$target_path = "uploadedMp3/";
$target_path = $target_path . basename($_FILES['uploadedfile']['name']);
$returnMessage = '';
if(move_uploaded_file($_FILES['uploadedfile']['tmp_name'], $target_path))
{
//FTP the file to VM Link
$ftp_ip = MY_IP;
$ftp_username = MY_USER_NAME;
$ftp_password = MY_PASSWORD;
if($ftp=ftp_connect($ftp_ip,21,3600))
{
if(ftp_login($ftp,$ftp_username,$ftp_password))
{
// Set to PASV mode
ftp_pasv( $ftp, 1);
ftp_chdir($ftp,"/mp3/");
// Send the file
//set_time_limit(-1); // PHP won't timeout
//ignore_user_abort(true);
ini_set('upload_max_filesize', '50M');
ini_set('post_max_size', '50M');
$upload = ftp_put($ftp, $_FILES['uploadedfile']['name'],$target_path , FTP_BINARY);
$returnMessage .= "0##The file has been uploaded";
}
else
{
$returnMessage .= "-1##Ocorreu um erro de conexão com o servidor remoto. Entre em contato com a Mobilevel para mais informações.(1)";
}
ftp_close($ftp);
}
else
{
$returnMessage .= "-1##Ocorreu um erro na conexão com o servidor remoto. Entre em contato com a Mobilevel para mais informações.(2)";
}
}
else
{
$returnMessage .= "-1##Ocorreu um erro no Upload, tente novamente. Se o problema persistir entre em contato com a Mobilevel.";
}
unlink($target_path);
echo "<html><head>";
echo "<scr";
echo "ipt type=\"text/javascript\">parent.uploadCallback('" . $returnMessage . "');</scr";
echo "ipt>";
echo "</head><body>";
echo "</body></html>";
/*
echo "<scr";
echo "ipt type=\"text/javascript\">parent.uploadCallback('" . $returnMessage . "');</scr";
echo "ipt></html>";
*/
?>