چگونه خطای HTTP هنگام آپلود عکس در وردپرس را حل کنیم؟

09 آبان 1397
http-error-in-wordpress

آیا شما هم هنگام آپلود کردن رسانه های مختلف مانند عکس و ویدیو با خطای HTTP مواجه می شوید؟

معمولا بعضی اوقات در وردپرس، خطا های مختلفی جهت آپلود کردن رسانه ها و مدیا ها رخ می دهد که یکی از رایج ترین خطا ها، خطای HTTP است.

در ادامه این مطلب از روکسو، قرار است به شما دوستان عزیز به راه حل های این موضوع بپردازیم.

دلیل رخ دادن خطای HTTP هنگام آپلود کردن تصاویر چیست؟

معمولا زمانی که کاربر با خطای HTTP مواجه می شود، وردپرس هیچ دلیلی برای این خطا نمی آورد و تنها متنی که برای کاربر نشان می دهد، متن خطای HTTP است.

بخش آزار دهنده خطای HTTP این است که هیچ دلیلی را نمی توان برای آن در نظر گرفت که چرا این خطا رخ داده است.

خطای HTTP

به همین سبب، کاربر باید راه حل های دیگری را برای آپلود رسانه ها و تصاویر خود در وردپرس پیدا کند. در ادامه، به راه حل های این موضوع می پردازیم.

روش اول: اطمینان حاصل کنید که این خطا دائمی است

معمولا گاهی اوقات وردپرس در اثر ترافیک های بالا یا ایجاد مشکلات موقت در سرور ها، خطای HTTP را هنگام آپلود عکس و تصویر نشان می دهد. برای همین، اگر با این خطا مواجه شدید، چند دقیقه صبر کنید و مجدداً امتحان کنید. اگر مجدد این خطا برای شما نمایش داده شد، سعی کنید یک فایل و تصویر دیگری را آپلود کنید.

اگر فایل و تصویر دیگری در وردپرس با موفقیت آپلود شد، به این معناست که تصویر یا فایل مورد نظر شما دچار مشکلاتی است. سعی کنید تصویر خود را بهینه کنید و از حجم آن کم کنید. با استفاده از نرم افزار های مختلف مخصوص این کار، می توانید این فرایند را انجام دهید.

یا می توانید بجای بهینه کردن تصویر، فرمت آن را تغییر دهید. به طور مثال می توانید فرمت تصویر را از JPG به PNG تغییر دهید.

روش دوم: افزایش مقدار محدودیت حجمی وردپرس برای آپلود عکس

هنگامی که می خواهید یک تصویر یا فایل را در وردپرس آپلود کنید، در ابتدا یک حجم مشخصی را برای شما معین می کند و به شما می گوید که تنها می توانید تا سقف این حجم، فایل یا تصویر آپلود کنید. بعضی اوقات، همین محدودیت ممکن است باعث ایجاد و رخ دادن خطای HTTP شود. برای حل این موضوع، شما نیاز دارید تا مقدار این محدودیت حجمی را افزایش دهید.

برای افزایش محدودیت حجمی آپلود، کد زیر را در فایل wp-config.php وردپرس خود قرار دهید:

define( 'WP_MEMORY_LIMIT', '256M' );

آپلود فایل در وردپرس و خطای http

در کد بالا، شما درواقع به وردپرس دستور داده اید که محدودیت حجمی را تا 256 مگابایت افزایش دهد تا بتوانید فایل های خود را تا سقف 256 مگابایت آپلود کنید.

روش سوم: تغییر کتابخانه Image editor وردپرس

همانطور که می دانید، وردپرس بر روی زبان برنامه نویسی php در حال اجرا است و برای مدیریت و رسیدگی تصاویر آپلود شده خود از دو نوع ماژول استفاده می کند. این دو نوع ماژول GD Library و Imagick نام دارند.

وردپرس به طور معمول، هر کدام از ماژول هایی که قابل دسترس هست را استفاده می کند. ماژول Imagick مقصر رخ دادن خطای HTTP است که شما باید ماژول پیش‌فرض وردپرس را از Imagick به GD Library تغییر دهید.

خیلی ساده می توانید برای انجام این فرایند، کد زیر را در فایل قالب وردپرس خود یعنی functions.php قرار دهید:

function wpb_image_editor_default_to_gd( $editors ) {
    $gd_editor = 'WP_Image_Editor_GD';
    $editors = array_diff( $editors, array( $gd_editor ) );
    array_unshift( $editors, $gd_editor );
    return $editors;
}
add_filter( 'wp_image_editors', 'wpb_image_editor_default_to_gd' );

پس از قرار دادن این کد در فایل functions.php مجددا سعی کنید که یک تصویر را آپلود کنید.

روش چهارم: استفاده از راه htaccess

گاهی اوقات ممکن است ماژول Imagick در وردپرس از چندین سرور برای مدیریت و پردازش سریع تر تصاویر استفاده کند و نتیجه این کار، ممکن است رخ دادن خطای HTTP باشد.

برای اینکه بتوانید سرور های مورد استفاده Imagick را تغییر دهید و به آن دستور دهید که از یک سرور برای پردازش تصاویر استفاده کند، نیاز دارید تا کد زیر را در فایل htaccess. قرار دهید:

SetEnv MAGICK_THREAD_LIMIT 1

خب دوستان مطلب بنده همینجا به پایان می رسه، امیدوارم که استفاده های لازم رو از مطلب کرده باشید. اگر هرگونه سوال، مشکل یا انتقادی در رابطه با این مطلب داشتید خیلی راحت می توانید آن را در بخش نظرات مطرح کنید 🙂

نویسنده شوید

دیدگاه‌های شما

در این قسمت، به پرسش‌های تخصصی شما درباره‌ی محتوای مقاله پاسخ داده نمی‌شود. سوالات خود را اینجا بپرسید.