اذهب إلى المحتوى

كيفية إصلاح خطأ عدم إمكانية تحميل الملف في ووردبريس


صديق دمياطي

إن حاولت مرةً رفع ملفٍ إلى مكتبة الوسائط ولم يُسمح لك برفعه، وظهرت لك رسالة الخطأ "Sorry, you are not allowed to upload this file type"، أو رسالة الخطأ -كما في في إصداراتٍ سابقة- عفوًا، هذا النوع من الملفات غير مسموح به لأسباب أمنية، فقد تشعر بالحيرة حول كيفية حل هذا الخطأ. لحسن الحظ، توجد عدة طرائق لإصلاحه، وإعادة الأمور إلى طبيعتها.

سنشرح من خلال هذا المقال سبب حدوث خطأ "Sorry, you are not allowed to upload this file type" في ووردبريس. بعد ذلك، سنستعرض أبرز أربع طرائق لحل هذا الخطأ، ورفع أيّ ملفٍ إلى موقعك الووردبريس دون عوائق.

سبب حدوث هذا الخطأ في ووردبريس

لا تعتقدْ أن سبب حدوث هذا الخطأ في ووردبريس صعبٌ ومعقد، بل هو أبسط مما تتخيل. ربما لا تعرف هذه المعلومة، ولكنك لن تستطيع رفع كل أنواع الملفات إلى الووردبريس بسبب وجود قيود على ذلك. بالتالي، سيظهر هذا الخطأ في ووردبريس عند محاولتك رفع أحد أنواع الملفات المحظورة.

01 - سبب حدوث خطأ Sorry, you are not allowed to upload this file type.png

وُضعَت هذه القيود لمنع حدوث مشكلات أمنية بسبب الثغرات التي تأتي من الملفات المرفوعة. يمكن أن يؤدي الرفع المتعمد أو غير المتعمد للملفات التنفيذية الضارة إلى إلحاق ضررٍ دائمٍ بموقعك، لأنه قد يمنح المخترقين إمكانية الوصول إلى موقعك أو الخادم الخاص به.

لا تنطبق قيود رفع الملفات هذه عليك أنت فقط، بل على جميع مستخدمي الموقع، فمن دون وسائل حمايةٍ كهذه، سيصبح عمليًا رفع أي شيءٍ إلى موقعك أمرًا ممكنًا، مما سيشكل -بالطبع- خطرًا كبيرًا عليه.

باختصار، هذا الخطأ موجود لحماية موقعك، وهو بالتأكيد ليس أسوأ خطأٍ قد يظهر لك في ووردبريس. ومع ذلك، إن لم تزل مصرًّا على رفع نوع ملفٍ محظور، فسيكون هذا الخطأ حَسَن النيّةِ مشكلةً بالنسبة لك.

كيفية إصلاح هذا الخطأ في ووردبريس

عندما يتعلق الأمر بإصلاح هذا الخطأ بالتحديد، فأمامك مجموعة متنوعة من الخيارات. واعتمادًا على الأنسب لك، يجب أن توفر إحدى الطرائق المذكورة أدناه حلًا بسيطًا للخطأ؛ ولكن يجب التنويه إلى أن بعض شركات الاستضافة قد تحظر أنواعًا معيّنةً من الملفات التي يمكن رفعها إلى الموقع أيضًا، فإن كان مزود الاستضافة الخاص بك أحدها، فلن تفيدك الحلول التي سنوردها في هذا المقال. إن كانت هذه حالتك، فتواصل أولًا مع مزود الاستضافة الخاص بك، إذ يجب أن يكون قادرًا على مساعدتك في حلِّ المشكلة.

1. إضافة أنواع ملفات مسموح برفعها عن طريق تغيير إعدادات الووردبريس متعدد المواقع

يتيح لك الووردبريس متعدد المواقع WordPress Multisite إمكانية إنشاء شبكة من مواقع الويب باستخدام منصة ووردبريس واحدة. وهو مفيد إن رغبتَ مثلًا بالسماح للمستخدمين بإنشاء مدوناتهم الخاصة، أو إن كانت شركتك دوليةً، وتريد استخدام النطاقات الفرعية لإنشاء مواقع خاصة بكل بلد، فعندها ستحتاج إلى تحديث محتواها في وقتٍ واحد.

على عكس الووردبريس أحادي الموقع، يحتوي الووردبريس متعدد المواقع على إعدادات تسمح ببساطة برفع الملفات التي لا يُسمح بها عادةً في ووردبريس. للوصول إليها، انتقل إلى إعدادات الشبكة ضمن الإعدادات في لوحة التحكم الرئيسية التي تدير منها شبكة المواقع.

تحت عنوان إعدادات الرفع، ستجد إعداد أنواع الملفات المسموح رفعها، الذي يمكّنك من إضافة امتدادات أنواع الملفات التي ترغب في السماح برفعها، كما يظهر في الصورة أدناه:

02 - إضافة أنواع الملفات مسموحٌ بها عن طريق تغيير إعدادات الووردبريس متعددة المواقع.png

بمجرد حفظ التغييرات، سيؤدي ذلك إلى تحديث أنواع الملفات المسموح بها لجميع المواقع في الشبكة، مما يتيح لك وللمستخدمين رفع أيّ نوعٍ من أنواع الملفات التي أضفتها إلى الإعدادات.

2. تعديل أنواع الملفات المسموح بها باستخدام إضافة

توجد العديد من الإضافات التي تسمح لك برفع أنواع الملفات المحظورة، مثل إضافتي File Manager، وEnhanced Media Library. تحتوي هذه الإضافات على إعدادات تسمح برفع ملفات تنتمي إلى أنواع امتدادات بريد الإنترنت متعددة الأغراض MIME إلى ووردبريس.

توفِّر أنواع MIME وصفًا للمحتوى الموجود في الملف المرفوع، حتى يتمكّن المتصفح من عرضه بطريقةٍ صحيحة. على سبيل المثال، يتوافق امتداد الملف jpg. مع MIME من النوع image/jpeg؛ ليُعرض كصورة في متصفحات الويب.

سنشرح طريقة استخدام إضافة Enhanced Media Library لإضافة أنواع MIME جديدة مسموحٍ برفعها. يمكنك تنصيب الإضافة وتفعيلها بسهولة من خلال قسم الإضافات في لوحة تحكم الووردبريس الخاصة بموقعك:

03 - تعديل أنواع الملفات المسموح بها باستخدام إضافة.png

بعد تفعيل الإضافة، توجَّه إلى الإعدادات لترى وجود خيار MIME Types الذي ستنتقل بالضغط عليه إلى صفحة إعدادات الوسائط. وتوجد طريقتان للسماح برفع نوعٍ MIME معيّن: الأولى هي تفعيل المربع المقابل لنوع MIME المطلوب في عمود السماح بالرفع Allow Upload ببساطة، والثانية، إن لم يكن النوع الذي تريده مدرجًا، فسيتعيّن عليك الضغط على زر إضافة نوع MIME جديد Add New MIME Type الموجود أعلى الصفحة.

04 - تعديل أنواع الملفات المسموح بها باستخدام إضافة.png

ستؤدي إضافة نوع MIME جديد إلى إضافة صفٍ جديد في الجدول يحتوي الامتداد الجديد، ونوع MIME الجديد، والتسميات الجديدة. بعد ذلك، فعّل المربع المقابل للنوع المُضاف من عمود السماح بالرفع Allow Upload؛ ليصبح رفعه إلى موقعك الووردبريس ممكنًا. إن غيرت رأيك لاحقًا، فتستطيع إزالة الإدخالات الجديدة باستخدام زر الحذف الموجود في نهاية كل صف، أو من خلال الضغط على زر استعادة أنواع MIME الافتراضية في ووردبريس Restore WordPress default MIME Types للعودة إلى الإعدادات الأصلية.

3. استخدم مرشح Upload_Mimes عن طريق تحرير ملف functions.php الموجود في قالب موقعك

بدلًا من استخدام إضافة لتغيير أنواع MIME المسموح بها في موقعك، تستطيع فعل ذلك يدويًا، إذ ستحتاج إلى الوصول إلى ملف functions.php الموجود في قالب موقعك، واستخدام دالّة ووردبريس تُعرف باسم المرشح.

يحدِّد ملف functions.php سلوك أو وظائف موقعك الووردبريس. ويمكنك استخدام المرشحات لتعديل الوظائف الافتراضية لمنصة الووردبريس. من خلال إضافة مرشح upload_mimes إلى ملف functions.php، سيتغيّر السلوك الافتراضي للووردبريس عند محاولة رفع نوع ملف محظور إليه.

بدايةً، يُفضل إنشاء نسخة احتياطية من موقعك لتضمن استعادته إن حدث خطأ ما أثناء تحرير ملفات الموقع الأساسية. بعد ذلك، ستحتاج إلى الوصول إلى ملف functions.php باستخدام برنامج عميل FTP، مثل FileZilla.

بعد نجاح الاتصال مع خادم موقعك، ستستطيع العثور على ملف functions.php داخل مجلد القالب الموجود في مجلد themes، والموجود بدوره داخل مجلد wp-content. انقر بعدها بزر الفأرة الأيمن فوق الملف، واختر عرض/تحرير.

05 - استخدم فلتر Upload_Mimes عن طريق تحرير ملف functions.php الموجود في قالب موقعك.png

سيُفتح الملف في محرر النصوص الخاص بك. أضف الأوامر البرمجية التالية إليه:

function my_custom_mime_types( $mimes ) {
// New allowed mime types.
$mimes['svg'] = 'image/svg+xml';
$mimes['svgz'] = 'image/svg+xml';
$mimes['doc'] = 'application/msword';
// Optional. Remove a mime type.
unset( $mimes['exe'] );

return $mimes;
}
add_filter( 'upload_mimes', 'my_custom_mime_types' );

أضف أيّة أنواع MIME أخرى تريدها، وامتداداتها كذلك إلى المصفوفة. يمكنك أيضًا إضافة أنواع MIME التي ترغب في حظر رفعها إلى القسم الاختياري في الشيفرة Remove a mime type، أو احذف هذا القسم إن لم يكن هناك داعٍ له.

تمكّنك هذه الطريقة من تحديد أنواع MIME التي تريد السماح برفعها إلى الموقع، وبذلك تبقى متحكمًا، ومانعًا لأيّة ثغرات أمنية تأتي من رفع الملفات. تأكد من حفظ التغييرات عند الانتهاء من التحرير.

4. السماح برفع كل أنواع الملفات من خلال تحرير ملف wp-config.php

من خلال تحرير ملف wp-config.php الذي يحتوي على معلوماتٍ تتعلق بقاعدة بيانات موقعك، ستستطيع السماح برفع كل أنواع الملفات دون قيود أبدًا. ولكن قبل ذلك، ننصحك مرةً أخرى بضرورة إنشاء نسخة احتياطية من بيانات موقعك تحسبًا لحدوث خطأٍ ما عند التحرير.

تحتاج بعد ذلك إلى استخدام برنامج FileZilla للوصول إلى wp-config.php كما فعلنا في الطريقة السابقة. ويجب أن تجد الملف في المجلد الأساسي Root لموقعك الووردبريس. وعندما تجده، انقر عليه بزر الفأرة الأيمن فوق الملف، واختر عرض/تحرير.

06 -  السماح برفع كل أنواع الملفات من خلال تحرير ملف wp-config.php.png

في ملف wp-config.php، ابحث عن السطر التالي الذي ستجده غالبًا في القسم الأخير من الملف:

/* That's all, stop editing! Happy publishing. */

أضف بعدها الأوامر البرمجية التالية في أي مكانٍ فوق السطر الذي وجدته:

define('ALLOW_UNFILTERED_UPLOADS', true);

تأكد من حفظ التغييرات التي أجريتها عند الانتهاء من التحرير. لاحظ أن القيام بذلك يعني أنّ لا شيء سيمنعك أنت أو المستخدمين الآخرين من رفع الملفات الضارة، ولو عن طريق الخطأ (أو عن قصد)، إلى موقعك الووردبريس، لذلك قد يكون من الحكمة تجربة خيارات أخرى قبل اللجوء إلى هذا الخيار.

الخاتمة

عادةً ما تكون أخطاء ووردبريس التي تحدث أثناء العمل في الموقع مزعجة، ولكن، عندما يتعلق الأمر بخطأ "Sorry, you are not allowed to upload this file type"، فهناك العديد من الحلول المتاحة من أجل السماح برفع الملفات المحظورة في ووردبريس افتراضيًا.

ناقشنا في مقالنا اليوم أسباب وقوع هذا الخطأ في ووردبريس، وسبب وجوده، ثم قدمنا أربعة حلولٍ ممكنة لإصلاح هذا الخطأ:

  • إضافة أنواع ملفات مسموح بها عن طريق تغيير إعدادات الووردبريس متعدد المواقع.
  • تعديل أنواع الملفات المسموح بها باستخدام إضافة.
  • استخدم مرشح Upload_Mimes عن طريق تحرير ملف functions.php الموجود في قالب موقعك.
  • السماح برفع كل أنواع الملفات من خلال تحرير ملف wp-config.php.

إن كانت لديك أيّة أسئلة أخرى حول خطأ "Sorry, you are not allowed to upload this file type" في ووردبريس، فأخبرنا بها من خلال قسم التعليقات أدناه.

ترجمة -وبتصرّف- للمقال How to Fix the "Sorry, This File Type Is Not Permitted for Security Reasons" Error in WordPress لصاحبه John Hughes.

اقرأ أيضًا


تفاعل الأعضاء

أفضل التعليقات

لا توجد أية تعليقات بعد



انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أضف تعليق

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • أضف...