سؤال

ولقد وضعت تطبيق تحميل صورة يستخدم فلاش لتحميل صورة، تغيير حجم الصورة وإرسال bytearray من بيانات الصورة إلى ملف PHP التي إخراج ملف تغيير حجمها باستخدام التعليمات البرمجية التالية -

$default_path = '/uploads/temp/';
$filename = $_GET["filename"];
$destination = $default_path . $filename;
if(file_put_contents($destination, $GLOBALS["HTTP_RAW_POST_DATA"])) {
echo "The file " . basename( $_FILES[ 'Filedata' ][ 'name' ] ) . " has been uploaded;";
} else {
   echo "FILE UPLOAD FAILED";
}

وهذا عمل عظيم عندما كنت تشغيله من ويندوز مخصصة خادم الويب 2003 لكن الآن بعد أن أحاول أن تشغيل هذا على مثيل EC2 أنها توقفت عن العمل، وأنا فقط الحصول على "تحميل الملف فشل" رسالة. استطيع ان اقول من الحرائق فايرفوكس إضافة على أن البيانات bytearray يتم نشرها إلى المثال EC2 بأس به ولكن لا يمكن أن نرى ماذا سوف يسبب المشكلة.

وعلى EC2 أنا على التوالي صورة سينت أو إس مع PHP و Apache المثبتة، أنا لا الحدث تعرف من أين تبدأ استكشاف هذه واحدة! من فضلك قل لي ما هي القضايا ولست بحاجة إلى أن تبحث عن هنا، أي أفكار؟

وراجعت سجلات الخطأ والحصول على رسالة الخطأ التالية -

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

هل هذا له علاقة pointint إلى الدليل الخطأ؟ أو أذونات كشخص قد ذكر أدناه؟ كيف أعطي الإذن PHP الكتابة إلى هذا الدليل والتي يجب أن استخدمها المسار المطلق مرجع الدليل أريد أن أكتب الصورة ل؟

وهتافات

هل كانت مفيدة؟

المحلول

ويمكن أن يكون مشكلة إذن، ربما المستخدم فب ليس لديها إذن الكتابة إلى الدليل المحدد.

هل لديك أي رسائل في سجل خطأ اباتشي؟

نصائح أخرى

وأنا لا أعرف إذا كان لديك استعداد للعمل مع الفئات الأخرى، ولكن هناك عدد قليل من الطبقات PHP EC2 حول والتي قد تساعد - <وأ href = "http://sourceforge.net/projects/php-ec2/" يختلط = "نوفولو noreferrer"> http://sourceforge.net/projects/php-ec2/

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top