أذونات غريبة على ملف تم تعديله بواسطة PHP move_uploaded_file ()

StackOverflow https://stackoverflow.com/questions/205822

  •  03-07-2019
  •  | 
  •  

سؤال

وأنا على التوالي PHP 5.2.6 على مربع المؤسسة ويندوز سيرفر 2003. تم تعيين IIS لمنع الوصول المجهول واستخدام مصادقة Windows المدمجة.

وأنا باستخدام برنامج نصي PHP لحفظ ملف مرفوع من نموذج ويب. يتم تحميل الملف إلى مجلد مؤقت، والسيناريو بإنشاء اسم الملف والمسار اعتمادا على متغيرات أخرى من النموذج على شبكة الإنترنت، ومن ثم يستخدم النصي move_uploaded_file PHP () لنقل الملف المؤقت إلى الموقع النهائي. كل ما يعمل بشكل جيد. باختصار، الناس تحميل الملفات بحيث كل فرد في المجموعة يمكن رؤيتها ويتم تنظيم الملفات من قبل البرنامج النصي.

ومشكلتي هي أن الملف في الموقع النهائي لديه أذونات غريبة. ومن لا تنتهي مع الأذونات من أي موقع مؤقت أو الموقع النهائي. كل من موقع مؤقت، والمكان النهائي له نفس الأذونات: جميع الحقوق للمالك والإدارات. قراءة وقراءة / تنفيذ لمدة 2 مجموعات الأمان AD محددة. الملف النهائي ينتهي مع فقط: جميع الحقوق للمالك والإدارات. وذلك في حين مدراء ورافع الأصلي ليس لديهم مشكلة عرض الملف، كل الآخرين في المجموعة الحصول على "رفض إذن" عند محاولة الوصول إلى ذلك.

وأي أفكار أو اقتراحات سيتم تقدير كبير! شكرا!

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

المحلول

ويبدو أن هذا مشكلة مع وظيفة move_uploaded_file():
http://us3.php.net/move_uploaded_file
نلقي نظرة على التعليقات الواردة أدناه، علما تعليق فلوريان حول نسخة ().

هل نسخ () حل القضية ؟:
http://us3.php.net/manual/en/function.copy. فب

نصائح أخرى

من صفحة PHP على move_uploaded_file (ملحوظة: هذا العمل بالنسبة لي):

لأولئك الذين يستخدمون PHP على ويندوز وIIS، يجب تعيين قيمة "upload_tmp_dir" في ملف php.ini لبعض دليل حول حيث المواقع الدليل الخاص بك، إنشاء هذا الدليل، ومن ثم تعيين نفس الأذونات على ذلك الذي قمت بضبطه لدليل مواقع الويب الخاصة بك. خلاف ذلك، عندما تقوم بتحميل ملف ويذهب إلى C: \ WINDOWS \ درجة الحرارة، ثم تحريكه إلى دليل موقع الويب الخاص بك، لن يتم تعيين الأذونات بشكل صحيح. هذا سوف يسبب لك مشاكل إذا أردت ثم التعامل مع هذا الملف مع شيء من هذا القبيل فائدة تحويل يماغيماغيك ل.

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