در این مقاله، درباره MIME type و اینکه وردپرس به کدام MIME type اجازه آپلود می دهد یا کدام نوع MIME را تشخیص می دهد و یا چگونه می توان انواع زیادی از MIME type را در صورت نیاز اضافه کرد، توضیح مختصری خواهیم داد.
همچنین خواهید دانست که چرا هنگام آپلود یک تصویر ممکن است یک خطای امنیتی مانند «Sorry, this file type is not permitted for security reasons» دریافت کنید و نحوه رفع این خطا را نیز توضیح خواهیم داد.
اگر از زبانی به جز انگلیسی استفاده می کنید، لطفا آپدیت دادههای ترجمه را در قسمت بروزرسانی های داشبورد، انجام دهید. اگر قسمت “multisite” فعال است، لطفاً منوی تنظیمات را در بخش ادمین شبکه بررسی کنید. اول از همه “Media Type Settings” را در بخش “setting” بررسی کنید.
آذرسیس ارائه دهنده انواع هاست لینوکس مناسب برای وردپرس و همچنین انواع سرور مجازی لینوکس مناسب برای سایت های پربازدید وردپرسی با منابع بالا و قیمت ارزان
شما می توانید لیستی از انواع MIME مجاز و پسوند فایل توسط وردپرس را مشاهده کنید. هنگامی که نوع MIME یا پسوند فایل را اضافه می کنید، داده ها با رنگ قرمز به آخرین مورد در این لیست اضافه می شوند. فقط کاربری که مجوز manager_options را دارد میتواند تنظیمات را اضافه کند.
فهرست مطالب
بررسی افزونه MIME type و انواع آن در وردپرس
MIME مخفف عبارت Multipurpose Mail Extensions است. MIME type ها توسط مرورگرها و سایر دستگاه های اینترنتی و برای تعیین نوع محتوای مرتبط با یک صفحه، استفاده می شود.
به عنوان مثال، اگر یک فایل png. و یک فایل jpeg. در صفحه دارید، مرورگر به وسیله MIME type تشخیص می دهد که هر دو فایل را به عنوان تصویر در نظر بگیرد نه ویدیو و فایل های دیگر.
به طور پیشفرض وردپرس فهرستی از MIME type ثبت شده در wp-includes/functions.php دارد، که هر توسعهدهنده ای می تواند با استفاده از wp_get_allowed_mime_types ()، آنها را پیدا کند. این فایل ها از جمله فایل هایی هستند که توسط وردپرس شناسایی می شوند.
با این حال، تمام MIME های شناسایی شده، مجاز به آپلود از طریق داشبورد مدیریت وردپرس نیستند. برای مشاهده انواعی که وردپرس اجازه آپلود دارند، می توانید از فیلتر upload_mimes استفاده کنید.
اگر بخواهید فایلی را آپلود کنید که در آن MIME type یا نوع فایل توسط وردپرس پشتیبانی نمی شود، با خطای «Sorry, this file type is not permitted for security reasons» مواجه خواهید شد.
MIME type های مجاز در وردپرس کدامند؟
چون وردپرس یک MIME type منحصر به فرد را شناسایی می کند، این به این معنا نیست که شما قادر به آپلود آن نوع فایل در داشبورد مدیریت وردپرس هستید.
این برنامه انواع فایل هایی را که می توانید آپلود کنید، به موارد ذکر شده در زیر محدود می کند. در این بخش، لیستی از انواع فایل های مختلف که می توانید در وردپرس آپلود کنید و نوع MIME مربوطه را مشاهده خواهید کرد. این نوع فایل ها بدون هیچ گونه هشدار امنیتی در داشبورد wp-admin آپلود می شوند.
نوع MIME فرمت فایل
.jpg image/jpeg, image/pjpeg
.jpeg image/jpeg, image/pjpeg
.png image/png
.gif image/gif
.ico image/x-icon
.pdf application/pdf
.doc application/msword
.docx application/vnd.openxmlformats-officedocument.wordprocessingml.document
.ppt application/mspowerpoint, application/powerpoint, application/vnd.ms- powerpoint, application/x-mspowerpoint
.pptx application/vnd.openxmlformats-officedocument.presentationml.presentation
.pps application/mspowerpoint, application/vnd.ms-powerpoint
.ppsx application/vnd.openxmlformats-officedocument.presentationml.slideshow
.odt application/vnd.oasis.opendocument.text
.xls application/excel, application/vnd.ms-excel, application/x-excel, application/x-msexcel
.xlsx application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
.psd application/octet-stream
.mp3 audio/mpeg3, audio/x-mpeg-3, video/mpeg, video/x-mpeg
.m4a audio/m4a
.ogg audio/ogg,
.wav audio/wav, audio/x-wav
.mp4 video/mp4
.m4v video/x-m4v
.mov video/quicktime
.wmv video/x-ms-asf, video/x-ms-wmv
.avi application/x-troff-msvideo, video/avi, video/msvideo, video/x-msvideo
.mpg audio/mpeg, video/mpeg
.ogv video/ogg
.3gp video/3gpp, audio/3gpp
.3g2 video/3gpp2, audio/3gpp2
MIME type های غیرمجاز در وردپرس کدامند؟
با استفاده از تابع wp_get_allowed_mime_types() لیستی از MIME type ها برایتان ظاهر می شود که وردپرس آنها را شناسایی می کند، اما اجازه آپلود نمی دهد.
در بخش زیر MIME type هایی را بررسی خواهیم کرد که مجاز به آپلود در wp-admin نیستند، اما این برنامه همچنان آنها را می شناسد.
هنگام آپلود فایل با استفاده از یکی از پسوندهای زیر، اخطار امنیتی « Sorry, this file type is not allowed for security reasons » را مشاهده خواهید کرد. برای یادگیری نحوه رفع خطا به این بخش مراجعه کنید.
نوع MIME فرمت فایل
.bmp image/bmp
.tif image/tiff
.tiff image/tiff
.asf video/x-ms-asf
.asx video/x-ms-asf
.wm video/x-ms-wm
.wmx video/x-ms-wmx
.divx video/divx
.flv video/x-flv
.qt video/quicktime
.mpe video/mpeg
.webm video/webm
.mkv video/x-matroska
.txt text/plain
.asc text/plain
.c text/plain
.cc text/plain
.h text/plain
.csv text/csv
.tsv text/tab-separated-values
.ics text/calendar
.rtx text/richtext
.css text/css
.htm text/html
.html text/html
.m4b audio/mpeg
.ra audio/x-realaudio
.ram audio/x-realaudio
.mid audio/midi
.midi audio/midi
.wax audio/x-ms-wax
.mka audio/x-matroska
.rtf application/rtf
.js application/javascript
.swf application/x-shockwave-flash
.class application/java
.tar application/x-tar
.zip application/zip
.gz application/x-zip
.gzip application/x-zip
.rar application/rar
.7z application/x-7z-compressed
.exe application/x-msdownload
.pot application/vnd.ms-powerpoint
.wri application/vnd.ms-write
.xla application/vnd.ms-excel
.xlt application/vnd.ms-excel
.xlw application/vnd.ms-excel
.mdb application/vnd.ms-access
.mpp application/vnd.ms-project
.docm application/vnd.ms-word.document.macroEnabled.12
.dotx application/vnd.openxmlformats-officedocument.wordprocessingml.template
.dotm application/vnd.ms-word.template.macroEnabled.12
.xlsm application/vnd.ms-excel.sheet.macroEnabled.12
.xlsb application/vnd.ms-excel.sheet.binary.macroEnabled.12
.xltx application/vnd.openxmlformats-officedocument.spreadsheetml.template
.xltm application/vnd.ms-excel.template.macroEnabled.12
.xlam application/vnd.ms-excel.addin.macroEnabled.12
.pptm application/vnd.ms-powerpoint.presentation.macroEnabled.12
.ppsm application/vnd.ms-powerpoint.slideshow.macroEnabled.12
.potx application/vnd.openxmlformats-officedocument.presentationml.template
.potm application/vnd.ms-powerpoint.template.macroEnabled.12
.ppam application/vnd.ms-powerpoint.addin.macroEnabled.12
.sldx application/vnd.openxmlformats-officedocument.presentationml.slide
.sldm application/vnd.ms-powerpoint.slide.macroEnabled.12
.onetoc application/onenote
.onetoc2 application/onenote
.onetmp application/onenote
.onepkg application/onenote
.odp application/vnd.oasis.opendocument.presentation
.ods application/vnd.oasis.opendocument.spreadsheet
.odg application/vnd.oasis.opendocument.graphics
.odc application/vnd.oasis.opendocument.chart
.odb application/vnd.oasis.opendocument.database
.odf application/vnd.oasis.opendocument.formula
.wp application/wordperfect
.wpd application/wordperfect
.key application/vnd.apple.keynote
.numbers application/vnd.apple.numbers
.pages application/vnd.apple.pages
انواع فایل های دیگر که می توان در وردپرس اضافه کرد
اگر نیاز به استفاده از انواع فایل های دیگر دارید، ساده ترین کار استفاده از یک افزونه برای انجام این کار است. این کار اغلب برای انواع فایل هایی که به صورت تصویر نیستند، ضروری است.
نمونههای رایج شامل فایلهای .epub یا .mobi کتاب های الکترونیکی است. اگر هنوز مشکل دارید، یک راه حل کاربردی دیگر اضافه کردن موارد زیر به فایل wp-config.php است که امکان آپلود انواع فایل های غیر تصویری را فقط برای کاربران سطح ادمین، فراهم می کند.
define( 'ALLOW_UNFILTERED_UPLOADS', true );
خطای آپلود فایل غیر تصویری در وردپرس
در بخش امنیتی WordPress 4.7.1 که در ژانویه 2017 منتشر شد، برای آپلود توسط برنامه تغییری در نحوه بررسی فایل “MIME type” ایجاد شد و این امر باعث شد تا برای برخی از انواع فایل ها خطای امنیتی در آپلود فایل به وجود آید (مخصوصاً برای فایل های غیرتصویری).
برخی از کاربران، به ویژه آنهایی که از افزونه های سفارشی برای افزودن انواع فایل های اضافی که وردپرس به طور پیش فرض به آنها اجازه می دهد، استفاده می کنند، ممکن است هنگام آپلود در wp-admin با این خطا مواجه شوند:
“filename has failed to upload Sorry, this file type is not permitted for security reasons ” این خطای امنیتی معمولا در فایل هایی که از پسوندها استفاده می کنند مشاهده می شود. (مانند: .docx، .ppt، .svg، .xlsm، .ai) اما ممکن است برای انواع فایلهای دیگر نیز نمایش داده شود.
اگر به تازگی این هشدار را می بینید، چند راه مختلف برای حل این مشکل وجود دارد:
1. خط زیر را به فایل wp-config.php اضافه کنید. این امکان آپلود فایل غیر تصویری را فقط برای ادمین ها فراهم می کند:
define( 'ALLOW_UNFILTERED_UPLOADS', true );
برای تغییر فایل wp-config با SFTP یا SSH Gateway متصل شوید.
2. از افزونه ای استفاده کنید که این توانایی را بازیابی می کند.
3. در عوض، فایلی را که خطا را برمی گرداند، با استفاده از SFTP آپلود کنید.
سخن آخر
افزونه های Mimetic در وردپرس برای آپلود فایل هایی با فرمت تصویر و بالعکس، روش های گوناگونی دارد که ما تلاش کردیم با لیست کردن دقیق آنها، در این باره به شما کمکی کرده باشیم.
در این مقاله یاد گرفتیم که هنگام دریافت هشدارهای مرتبط با آپلود فایل ها چه کارهایی باید کرد. با تشکر از شما که در آموزشی دیگر همراه ما بودید.