Помощь с загрузкой изображений в экземпляр EC2 (Flash -> PHP)
-
10-07-2019 - |
Вопрос
Я разработал приложение для загрузки изображений, которое использует Flash для загрузки изображения, изменения его размера и отправки байтового массива данных изображения в файл PHP, который выводит файл с измененным размером, используя следующий код -
$default_path = '/uploads/temp/';
$filename = Я разработал приложение для загрузки изображений, которое использует Flash для загрузки изображения, изменения его размера и отправки байтового массива данных изображения в файл PHP, который выводит файл с измененным размером, используя следующий код -
file_put_contents(/uploads/temp/abcdefg.JPG) [<a href='function.file-put-contents'>function.file-put-contents</a>]: failed to open stream: No such file or directory
Это прекрасно работало, когда я запускал его с выделенного веб-сервера Windows 2003, но теперь, когда я пытаюсь запустить его на экземпляре EC2, он перестал работать, и я получаю только " Ошибка загрузки файла " сообщение. Я могу сказать из надстройки Firefox Firebug, что данные bytearray отправляются в экземпляр EC2, но я не вижу, что еще может вызвать проблему.
в EC2 у меня запущен образ CentOS с установленным PHP и Apache, я не знаю, с чего начать устранение неполадок этого! Скажите, пожалуйста, какие вопросы мне нужно искать здесь, какие-либо идеи?
Я проверил журналы ошибок и получил следующее сообщение об ошибке -
<*>
Это связано с pointint в неправильном каталоге? или разрешения как кто-то изложил ниже? Как дать PHP разрешение на запись в этот каталог и использовать ли абсолютный путь для ссылки на каталог, в который я хочу записать изображение?
ура
GET["filename"];
$destination = $default_path . $filename;
if(file_put_contents($destination, $GLOBALS["HTTP_RAW_POST_DATA"])) {
echo "The file " . basename( Я разработал приложение для загрузки изображений, которое использует Flash для загрузки изображения, изменения его размера и отправки байтового массива данных изображения в файл PHP, который выводит файл с измененным размером, используя следующий код -
<*>
Это прекрасно работало, когда я запускал его с выделенного веб-сервера Windows 2003, но теперь, когда я пытаюсь запустить его на экземпляре EC2, он перестал работать, и я получаю только " Ошибка загрузки файла " сообщение. Я могу сказать из надстройки Firefox Firebug, что данные bytearray отправляются в экземпляр EC2, но я не вижу, что еще может вызвать проблему.
в EC2 у меня запущен образ CentOS с установленным PHP и Apache, я не знаю, с чего начать устранение неполадок этого! Скажите, пожалуйста, какие вопросы мне нужно искать здесь, какие-либо идеи?
Я проверил журналы ошибок и получил следующее сообщение об ошибке -
<*>
Это связано с pointint в неправильном каталоге? или разрешения как кто-то изложил ниже? Как дать PHP разрешение на запись в этот каталог и использовать ли абсолютный путь для ссылки на каталог, в который я хочу записать изображение?
ура
FILES[ 'Filedata' ][ 'name' ] ) . " has been uploaded;";
} else {
echo "FILE UPLOAD FAILED";
}
Это прекрасно работало, когда я запускал его с выделенного веб-сервера Windows 2003, но теперь, когда я пытаюсь запустить его на экземпляре EC2, он перестал работать, и я получаю только " Ошибка загрузки файла " сообщение. Я могу сказать из надстройки Firefox Firebug, что данные bytearray отправляются в экземпляр EC2, но я не вижу, что еще может вызвать проблему.
в EC2 у меня запущен образ CentOS с установленным PHP и Apache, я не знаю, с чего начать устранение неполадок этого! Скажите, пожалуйста, какие вопросы мне нужно искать здесь, какие-либо идеи?
Я проверил журналы ошибок и получил следующее сообщение об ошибке -
<*>Это связано с pointint в неправильном каталоге? или разрешения как кто-то изложил ниже? Как дать PHP разрешение на запись в этот каталог и использовать ли абсолютный путь для ссылки на каталог, в который я хочу записать изображение?
ура
Решение
Может быть проблема с правами доступа, возможно, у пользователя php нет прав на запись в указанный каталог.
Есть ли у вас сообщения в журнале ошибок Apache?
Другие советы
Я не знаю, готовы ли вы работать с другими классами, но есть несколько классов PHP EC2, которые могут помочь - http://sourceforge.net/projects/php-ec2/