วิธีแก้ไขข้อผิดพลาด HTTP ของ WordPress เมื่ออัปโหลดรูปภาพ

เผยแพร่แล้ว: 2022-06-03

ข้อผิดพลาด WordPress HTTP เป็นหนึ่งในข้อผิดพลาดทั่วไปที่คุณอาจพบหากเว็บไซต์ของคุณทำงานบน WordPress ข้อผิดพลาดนี้ค่อนข้างน่าผิดหวังเนื่องจากไม่มีเหตุผลที่แท้จริงว่าทำไมจึงเกิดขึ้น

ภายในบทความนี้ เราจะพิจารณาว่าข้อผิดพลาดนี้เกี่ยวกับอะไร รวมถึงการแก้ไขบางอย่างที่คุณสามารถนำไปใช้เพื่อแก้ไขข้อผิดพลาดได้

สารบัญ

ข้อผิดพลาด WordPress HTTP เมื่ออัปโหลดสื่อคืออะไร

วิธีแก้ไขข้อผิดพลาด HTTP

  • ดำเนินการตรวจสอบและเปลี่ยนแปลงเพื่อพิจารณาว่าเป็นปัญหาชั่วคราวหรือไม่
  • เปลี่ยนชื่อไฟล์รูปภาพ
  • ปิดใช้งานปลั๊กอินและธีมชั่วคราว
  • แก้ไขไลบรารีรูปภาพ WordPress
  • ปิดการใช้งาน mod_security
  • ตรวจสอบสิทธิ์ในโฟลเดอร์อัปโหลด
  • เพิ่มขีดจำกัดหน่วยความจำ PHP
  • อัปเดตเวอร์ชัน PHP ของคุณ

บทสรุป

ข้อผิดพลาด WordPress HTTP เมื่ออัปโหลดรูปภาพคืออะไร

ข้อผิดพลาด WordPress HTTP เป็นข้อผิดพลาดทั่วไปที่สร้างขึ้นเมื่อพยายามอัปโหลดรายการสื่อผ่านตัวอัปโหลดสื่อ รายการสื่อเหล่านี้อาจเป็นวิดีโอหรือรูปภาพก็ได้ ตัวอย่างเช่น คุณอาจพบข้อผิดพลาดนี้เมื่ออัปโหลดรูปภาพเด่นของโพสต์

ข้อผิดพลาด HTTP มักจะมีรหัสสถานะ รหัสสถานะนี้ช่วยให้คุณสามารถระบุสาเหตุของข้อผิดพลาดได้ อย่างไรก็ตาม สิ่งที่น่าผิดหวังของข้อผิดพลาดนี้คือ WordPress ไม่อยู่ในฐานะที่จะระบุสาเหตุที่แท้จริงของข้อผิดพลาดได้

การใช้รูปภาพในเว็บไซต์ของคุณค่อนข้างสำคัญ เนื่องจากรูปภาพให้ข้อมูลเพิ่มเติมในรูปแบบที่ดีกว่ามาก รูปภาพยังให้ข้อได้เปรียบด้าน SEO ในการจัดทำดัชนีเว็บไซต์ของคุณในเครื่องมือค้นหา ดังนั้นจึงเป็นเรื่องสำคัญที่จะต้องแก้ไขข้อผิดพลาด HTTP เพื่อให้อยู่ในตำแหน่งที่จะอัปโหลดรูปภาพหรือเป็นสื่อภายในเว็บไซต์ของคุณ

ข้อผิดพลาดนี้อาจเกิดจากปัญหาหลายประการ สิ่งเหล่านี้รวมถึง:

i) ชื่อไฟล์ไม่ถูกต้อง: หากชื่อไฟล์ภาพมีอักขระพิเศษ เมื่ออัปโหลดภาพดังกล่าว คุณอาจพบข้อผิดพลาด HTTP

ii) ปัญหาเกี่ยวกับธีมและปลั๊กอิน: ปลั๊กอินหรือธีมอาจมีฟังก์ชันที่ขัดขวางการอัปโหลดรายการสื่อภายในเว็บไซต์ของคุณ

iv) ขีดจำกัดหน่วยความจำ: หากขีดจำกัดหน่วยความจำของ WordPress ในเว็บไซต์ของคุณค่อนข้างต่ำ แสดงว่าคุณมีแนวโน้มที่จะพบข้อผิดพลาด HTTP

v) Image Editor Modules: ข้อจำกัดของทรัพยากรในโมดูล เช่น ImageMagick อาจนำไปสู่ข้อผิดพลาด HTTP

วิธีแก้ไขข้อผิดพลาด HTTP

ในการแก้ไขข้อผิดพลาด HTTP คุณอาจต้องลองใช้วิธีแก้ปัญหาต่างๆ ขึ้นอยู่กับการตั้งค่าไซต์ของคุณ วิธีนี้จะช่วยให้คุณระบุสาเหตุของปัญหาและใช้การแก้ไขที่เหมาะสมได้ กระบวนการอาจใช้เวลาสักครู่ขึ้นอยู่กับความเร็วที่คุณอยู่ในฐานะที่จะระบุสาเหตุของข้อผิดพลาดได้ แต่ก็คุ้มค่าแน่นอน

หากข้อผิดพลาดได้รับการแก้ไขโดยใช้วิธีแก้ไขปัญหาเฉพาะ คุณไม่จำเป็นต้องดำเนินการแก้ไขปัญหาอื่น

เราจะกล่าวถึงวิธีแก้ปัญหาที่แนะนำซึ่งคุณสามารถลองใช้ได้ในคู่มือนี้

ดำเนินการตรวจสอบและเปลี่ยนแปลงเพื่อพิจารณาว่าเป็นปัญหาชั่วคราวหรือไม่

สามารถดำเนินการตรวจสอบและเปลี่ยนแปลงจำนวนหนึ่งเพื่อตรวจสอบว่าปัญหาข้อผิดพลาด HTTP เกิดขึ้นชั่วคราวหรือไม่ การตรวจสอบและการเปลี่ยนแปลงบางส่วน ได้แก่:

i) การรีเฟรชเบราว์เซอร์ของคุณ: ในบางครั้ง การขาดการเชื่อมต่ออินเทอร์เน็ตอาจทำให้ไม่สามารถอัปโหลดรูปภาพไปยังเว็บไซต์ของคุณได้ ดังนั้นจึงจำเป็นสำหรับคุณที่จะรีเฟรชเว็บเบราว์เซอร์ของคุณก่อนและตรวจสอบว่ากรณีนี้เกิดขึ้นกับคุณหรือไม่

ยังอยู่ในเบราว์เซอร์ของคุณ คุณยังสามารถล้างแคชของเบราว์เซอร์และตรวจสอบว่าปัญหาได้รับการแก้ไขแล้วหรือไม่ อีกวิธีหนึ่ง คุณยังสามารถทดสอบว่าปัญหามีการจำลองในเบราว์เซอร์อื่นที่คุณไม่ได้ทดสอบไซต์หรือในโหมดไม่ระบุตัวตนหรือไม่

ii) การตรวจสอบขนาดไฟล์: หากรูปภาพของคุณหรือรายการสื่อมีขนาดใหญ่เกินไป คุณก็มีแนวโน้มที่จะพบข้อผิดพลาด HTTP เช่นกัน ดังนั้น คุณอาจลองปรับขนาดภาพของคุณก่อน และตรวจสอบให้แน่ใจว่าไม่เกินขนาดอัปโหลดสูงสุดของ WordPress นอกจากนี้ คุณยังสามารถเพิ่มประสิทธิภาพรูปภาพของคุณโดยใช้ปลั๊กอินการเพิ่มประสิทธิภาพรูปภาพที่คุณต้องการ ตัวอย่างของปลั๊กอินดังกล่าว ได้แก่ EWWW Image Optimizer และ Imagify

iii) เปลี่ยนประเภทไฟล์: เซิร์ฟเวอร์บางเครื่องอาจไม่รองรับรูปแบบภาพต่างๆ ในกรณีดังกล่าว หากคุณอัปโหลดประเภทไฟล์ที่ไม่รองรับ คุณอาจพบข้อผิดพลาด HTTP เพื่อให้แน่ใจว่าจะไม่เป็นเช่นนั้น คุณต้องเปลี่ยนประเภทไฟล์ของรูปภาพหรือรายการสื่อ เมื่อดำเนินการเสร็จแล้ว ให้อัปโหลดอีกครั้งภายใต้ประเภทไฟล์ใหม่และดูว่าปัญหาได้รับการแก้ไขหรือไม่

เปลี่ยนชื่อไฟล์รูปภาพ

รูปภาพที่คุณอัปโหลดโดยใช้ตัวอัปโหลดสื่อของ WordPress ไม่ควรมีอักขระพิเศษ อักขระบางตัว ได้แก่ อะพอสทรอฟี ทวิภาค เครื่องหมายเท่ากับ กึ่งทวิภาค และสัญลักษณ์ภาษาสากล อย่างไรก็ตาม อักขระอย่างเช่น ขีดกลางและขีดล่างนั้นปลอดภัยต่อการใช้งาน

ในการตรวจสอบว่าปัญหานี้อาจเป็นปัญหาสำหรับคุณหรือไม่ คุณจำเป็นต้องตรวจสอบว่าอักขระที่กล่าวถึงข้างต้นมีอยู่ในชื่อไฟล์ภาพของคุณหรือไม่ ถ้าใช่ ให้ลบออกจากชื่อไฟล์และลองอัปโหลดภาพอีกครั้ง

ปิดใช้งานปลั๊กอินและธีมชั่วคราว

ในบางครั้ง ข้อผิดพลาด HTTP อาจเกิดจากปลั๊กอินที่คุณมี ปลั๊กอินความปลอดภัยและปลั๊กอินเพิ่มประสิทธิภาพรูปภาพมักเป็นสาเหตุของข้อผิดพลาด

เพื่อขจัดความเป็นไปได้ที่จะเกิดข้อผิดพลาดที่เกิดจากปลั๊กอิน คุณจะต้องปิดการใช้งานปลั๊กอินที่คุณมีอยู่เป็นจำนวนมาก สามารถทำได้จากส่วนปลั๊กอินภายในแดชบอร์ด WordPress ของคุณดังที่แสดงด้านล่าง:

เมื่อปิดใช้งานปลั๊กอินแล้ว ให้อัปโหลดภาพของคุณอีกครั้งและตรวจสอบว่าปัญหาได้รับการแก้ไขหรือไม่ หากเป็นเช่นนั้น ให้เปิดใช้งานปลั๊กอินใหม่ทีละรายการและอัปโหลดภาพในทุกอินสแตนซ์การเปิดใช้งานปลั๊กอินเพื่อระบุปลั๊กอินผู้กระทำผิด

ในบางครั้ง ข้อผิดพลาด HTTP เกิดจากธีม WordPress ที่ใช้งานอยู่ อย่างไรก็ตาม นี่เป็นกรณีที่เกิดขึ้นได้ยาก เนื่องจากธีมไม่ส่งผลกระทบโดยตรงต่อการอัปโหลดสื่อภายในเว็บไซต์ WordPress

อย่างไรก็ตาม เพื่อขจัดความเป็นไปได้ของธีม WordPress ที่เป็นสาเหตุของปัญหา คุณสามารถเปลี่ยนไปใช้ธีม WordPress เริ่มต้น เช่น ธีม Twenty Twenty-One หรือธีม Twenty Twenty Two เมื่อดำเนินการเปลี่ยน ให้อัปโหลดภาพของคุณและตรวจสอบว่ามีการแสดงข้อผิดพลาด HTTP หรือไม่ หากไม่เป็นเช่นนั้น แสดงว่าปัญหาเกิดจากธีมที่คุณใช้ในตอนแรก

ในกรณีใดกรณีหนึ่งข้างต้น หากคุณจำกัดปัญหาที่เกิดจากปลั๊กอินหรือธีมให้แคบลง ขอแนะนำให้ติดต่อผู้สร้างผลิตภัณฑ์ที่เกี่ยวข้อง มิฉะนั้น คุณสามารถเลือกใช้ปลั๊กอินหรือธีมอื่นได้

แก้ไขไลบรารีรูปภาพ WordPress

WordPress ใช้โมดูล PHP สองโมดูลในการประมวลผลภาพ นี่คือ Imagick และห้องสมุด GD ตามค่าเริ่มต้น WordPress จะใช้หนึ่งในโมดูล ขึ้นอยู่กับการติดตั้งเซิร์ฟเวอร์ของคุณ

อย่างไรก็ตาม โมดูล Imagick PHP บางครั้งใช้ทรัพยากรที่กำหนด เช่น ขีดจำกัดหน่วยความจำหมด ในกรณีที่มีขีดจำกัดหน่วยความจำหมดและคุณพยายามอัปโหลดรูปภาพไปยังเว็บไซต์ คุณอาจพบข้อผิดพลาด HTTP

ในกรณีข้างต้น เป็นการเหมาะสมที่จะเปลี่ยนไปใช้ไลบรารี GD เริ่มต้น ในการดำเนินการนี้ คุณจะต้องเพิ่มโค้ดด้านล่างลงในไฟล์ 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');

ด้านล่างนี้เป็นภาพหน้าจอตัวอย่างเกี่ยวกับสิ่งนี้:

เมื่อเสร็จแล้ว ให้ลองอัปโหลดภาพอีกครั้ง หากข้อผิดพลาด HTTP ยังคงเกิดขึ้น ให้นำรหัสออกและลองทำตามขั้นตอนอื่นๆ ที่ระบุไว้ในบทความนี้

ปิดการใช้งาน mod_security

Mod_security เป็นโมดูล Apache ที่ทำหน้าที่เป็นไฟร์วอลล์เว็บแอปพลิเคชันโอเพ่นซอร์ส เมื่อเปิดใช้งาน บางครั้งอาจทำให้เกิดข้อผิดพลาด HTTP เมื่อพยายามอัปโหลดภาพภายในเว็บไซต์ของคุณ

เพื่อทดสอบว่าปัญหาเกิดจากโมดูลหรือไม่ คุณสามารถปิดการใช้งานก่อนได้ สามารถทำได้ง่ายจากไฟล์ .htaccess ของคุณ

ขั้นแรก คุณจะต้องเข้าถึงไฟล์ไซต์รูทของคุณผ่าน FTP โดยใช้ซอฟต์แวร์ เช่น Filezilla หรือคุณสามารถทำได้ผ่านแผงโฮสติ้งของคุณ

จากนั้นเลือกเพื่อแก้ไขไฟล์ .htaccess และเพิ่มโค้ดต่อไปนี้ที่ด้านบนของไฟล์:

 <IfModule mod_security.c> SecFilterEngine Off SecFilterScanPOST Off </IfModule>

หากโฮสต์ของคุณใช้ cPanel คุณสามารถปิดใช้งานโมดูล ModSecurity แทนได้ โมดูลนี้อยู่ในส่วน "ความปลอดภัย"

เมื่อติดตามโมดูลแล้ว ให้คลิกที่โมดูลและปิดใช้งานภายในโดเมนของคุณโดยตั้งค่าสถานะเป็น "ปิด" ด้านล่างนี้เป็นภาพหน้าจอตัวอย่างเกี่ยวกับสิ่งนี้:

เมื่อดำเนินการนี้แล้ว ให้ลองอัปโหลดภาพของคุณอีกครั้งและตรวจสอบว่าปัญหาได้รับการแก้ไขแล้วหรือไม่

ตรวจสอบสิทธิ์ในโฟลเดอร์อัปโหลด

WordPress แนะนำให้ใช้โหมดการอนุญาต 755 สำหรับไดเรกทอรี ในบางครั้ง หากไม่เป็นเช่นนั้น คุณอาจพบข้อผิดพลาด เช่น ข้อผิดพลาด HTTP ในการสนทนาที่นี่ ดังนั้นจึงเป็นเรื่องสำคัญที่จะต้องตรวจสอบย้อนกลับว่าข้อผิดพลาดในการอัปโหลดรูปภาพเกิดจากการอนุญาตภายในโฟลเดอร์อัปโหลดหรือไม่

โฟลเดอร์อัพโหลดอยู่ภายในไดเร็กทอรี Wp-content ของไฟล์ไซต์ของคุณ คุณสามารถค้นหาโฟลเดอร์ได้อย่างง่ายดายผ่าน FTP หรือแผงโฮสต์ เช่น Cpanel

เมื่อติดตามโฟลเดอร์ ให้ตรวจสอบว่าสิทธิ์ตรงกับ 755 หรือไม่

หากไม่เป็นเช่นนั้น ให้เปลี่ยนการอนุญาตด้วยตนเองเป็น 755

เมื่อเสร็จแล้ว ให้ลองอัปโหลดรูปภาพอีกครั้งและตรวจสอบว่าข้อผิดพลาด HTTP ได้รับการแก้ไขแล้วหรือไม่

เพิ่มขีดจำกัดหน่วยความจำ PHP

ในกรณีที่หน่วยความจำเกินขีดจำกัดเมื่ออัปโหลดรายการรูปภาพหรือสื่อ คุณอาจพบข้อผิดพลาด HTTP เนื่องจากเซิร์ฟเวอร์มีหน่วยความจำไม่เพียงพอในการอัปโหลดรูปภาพ/สื่อให้เสร็จสมบูรณ์ คุณจะต้องเพิ่มขีด จำกัด หน่วยความจำ PHP ของคุณ

เพื่อเพิ่มขีดจำกัดหน่วยความจำ สามารถทำได้โดยการเพิ่มโค้ดบรรทัดเดียวภายในไฟล์ wp-config.php ของคุณ ไฟล์ wp-config.php อยู่ในรูทของไฟล์เว็บไซต์ของคุณ คุณสามารถเข้าถึงได้ผ่าน FTP โดยใช้ซอฟต์แวร์เช่น Filezilla หรือคุณสามารถทำได้ผ่านแผงโฮสติ้งของคุณ

เมื่อติดตามไฟล์ ให้เลือกแก้ไขและเพิ่มโค้ดด้านล่าง:

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

ควรเพิ่มรหัสก่อนบรรทัดที่เขียนว่า:

/* แค่นั้น หยุดแก้ไข! เผยแพร่ความสุข */

ด้านล่างนี้เป็นภาพหน้าจอเกี่ยวกับสิ่งนี้:

เมื่อเสร็จแล้วให้บันทึกการเปลี่ยนแปลงของคุณและลองอัปโหลดรายการรูปภาพ/สื่อของคุณอีกครั้งเพื่อดูว่าปัญหาได้รับการแก้ไขหรือไม่

อัปเดตเวอร์ชัน PHP ของคุณ

WordPress แนะนำให้ใช้ PHP เวอร์ชันล่าสุดที่ได้รับการสนับสนุนภายในไซต์ของคุณ การใช้ PHP เวอร์ชันเก่าอาจเป็นสาเหตุของข้อผิดพลาด HTTP หากเวอร์ชัน PHP ของคุณล้าสมัย คุณจะได้รับการแจ้งเตือนภายในแดชบอร์ด WordPress ด้านล่างนี้เป็นตัวอย่างภาพประกอบในประกาศนี้:

เนื่องจากปัจจุบัน WordPress รองรับ PHP เวอร์ชัน 7.4 อย่างเต็มที่ตามความต้องการที่นี่ ดังนั้นจึงแนะนำให้คุณใช้เวอร์ชันนี้ตามที่เป็นอยู่ในปัจจุบัน คุณสามารถขอให้ผู้ให้บริการโฮสต์อัปเดตเวอร์ชัน PHP ให้กับคุณได้

หากโฮสต์ของคุณใช้ cPanel คุณสามารถเปลี่ยนเวอร์ชัน PHP ของคุณได้อย่างง่ายดายจากลิงก์ "MultiPHP Manager" หรือ "เลือกเวอร์ชัน PHP" ขึ้นอยู่กับการกำหนดค่าโฮสต์ของคุณ

จากนั้นคุณสามารถใช้ PHP เวอร์ชันล่าสุดกับโดเมนของคุณได้ดังที่แสดงด้านล่าง:

เมื่อเสร็จแล้ว ให้ลองอัปโหลดภาพ/สื่ออีกครั้งและตรวจสอบว่าปัญหาได้รับการแก้ไขแล้วหรือไม่

บทสรุป

แม้ว่าข้อผิดพลาด HTTP จะไม่มีเหตุผลเฉพาะสำหรับเหตุการณ์ที่เกิดขึ้น แต่ก็ยังสามารถแก้ไขปัญหาและแก้ไขข้อผิดพลาดได้ ภายในบทความนี้ เราได้กล่าวถึงอย่างน้อยแปดวิธีที่คุณสามารถใช้เพื่อแก้ไขปัญหาและแก้ไขข้อผิดพลาดภายในเว็บไซต์ของคุณ

ความหวังของเราคืออย่างน้อยหนึ่งในวิธีการที่กล่าวถึงข้างต้นจะช่วยคุณในการแก้ไขข้อผิดพลาด HTTP ภายในเว็บไซต์ของคุณ หากคุณมีคำถามหรือข้อเสนอแนะใหม่เกี่ยวกับเรื่องนี้ โปรดแสดงความคิดเห็นในส่วนความคิดเห็นด้านล่าง