ข้อผิดพลาดหน่วยความจำ PHP หมดใน WordPress: คำแนะนำทีละขั้นตอนในการเพิ่มขีด จำกัด หน่วยความจำ
เผยแพร่แล้ว: 2023-11-21การเผชิญหน้าข้อผิดพลาด PHP Memory Exhausted ที่น่าหวาดกลัวใน WordPress อาจทำให้สับสน แต่อย่ากลัวเลย! คู่มือนี้จะอธิบายวิธีการต่างๆ ในการเพิ่มขีดจำกัดหน่วยความจำ PHP เพื่อให้มั่นใจว่าประสบการณ์ WordPress จะราบรื่นและปราศจากข้อผิดพลาด
ตลอดทั้งคู่มือนี้ เราจะใช้ตัวอย่าง เช่น '256M' เพื่อแสดงขีดจำกัดของหน่วยความจำ อย่างไรก็ตาม โปรดทราบว่านี่เป็นเพียงตัวอย่างเท่านั้น ความต้องการเฉพาะของเว็บไซต์ของคุณอาจต้องใช้ค่าหน่วยความจำที่แตกต่างกัน พิจารณาตัวอย่างเหล่านี้เป็นจุดเริ่มต้นและติดตามประสิทธิภาพไซต์ของคุณ โดยปรับค่าเหล่านี้เพื่อให้มีฟังก์ชันการทำงานที่เหมาะสมที่สุด
แก้ไขด่วน: การแก้ไข wp-config.php
ทำความเข้าใจกับ wp-config.php และบทบาทในการจัดสรรหน่วยความจำ
โดยพื้นฐานแล้ว WordPress อาศัย PHP ซึ่งเป็นภาษาสคริปต์ฝั่งเซิร์ฟเวอร์ ไฟล์ wp-config.php ที่อยู่ในไดเร็กทอรีรากของเว็บไซต์ WordPress มีบทบาทสำคัญในการกำหนดการตั้งค่าต่างๆ รวมถึงขีดจำกัดหน่วยความจำ PHP ขีดจำกัดนี้กำหนดจำนวนหน่วยความจำเซิร์ฟเวอร์ที่ WordPress สามารถใช้เพื่อดำเนินการได้ ที่สำคัญ การปรับแต่งขีดจำกัดนี้ใน wp-config.php จะส่งผลต่อไซต์ WordPress เฉพาะที่เป็นเจ้าของ โดยเสนอโซลูชันที่ได้รับการปรับแต่งโดยไม่กระทบต่อเซิร์ฟเวอร์ทั้งหมด หากคุณมีการติดตั้ง WordPress อื่นที่ซ้อนอยู่ในโฟลเดอร์ย่อย การติดตั้งแต่ละรายการจะดำเนินการแยกกัน และการเปลี่ยนแปลงที่ทำในที่หนึ่งจะไม่ส่งผลกระทบต่ออีกที่หนึ่ง
คำแนะนำทีละขั้นตอน: การเพิ่มหน่วยความจำ PHP
1. เข้าถึงไดเรกทอรีราก:
ใช้ไคลเอนต์ FTP หรือแผงควบคุมโฮสติ้งของคุณ ค้นหาไดเรกทอรีรากของการติดตั้ง WordPress ของคุณ ไดเรกทอรีรากมักตั้งชื่อตามเว็บไซต์ของคุณหรืออยู่ในโฟลเดอร์ชื่อ “public_html” หรือ “www” และเป็นที่ที่ไฟล์ทั้งหมดของเว็บไซต์ของคุณอาศัยอยู่
2. ค้นหา wp-config.php:
เมื่ออยู่ในไดเรกทอรีราก ให้ค้นหาไฟล์ wp-config.php ไฟล์นี้เก็บข้อมูลสำคัญสำหรับไซต์ WordPress ของคุณ
3. แก้ไข wp-config.php:
เปิด wp-config.php โดยใช้โปรแกรมแก้ไขข้อความ ค้นหาบรรทัดที่ระบุว่า "นั่นคือทั้งหมด หยุดแก้ไข! มีความสุขในการเขียนบล็อก” เหนือบรรทัดนี้ ให้ใส่โค้ดต่อไปนี้:
define( 'WP_MEMORY_LIMIT', '256M' );
บรรทัดนี้แนะนำให้ WordPress เพิ่มขีดจำกัดหน่วยความจำเป็น 256 เมกะไบต์
4. บันทึกและอัปโหลด:
หลังจากใส่โค้ดแล้ว ให้บันทึกการเปลี่ยนแปลงในไฟล์ wp-config.php ใน File Manager ให้คลิกปุ่ม "บันทึกการเปลี่ยนแปลง" หรือตัวเลือกที่คล้ายกันเพื่อยืนยันการเปลี่ยนแปลง หากคุณใช้ไคลเอ็นต์ FTP ให้บันทึกไฟล์ไว้ในเครื่อง จากนั้นอัปโหลดไฟล์ที่อัปเดตกลับไปยังไดเร็กทอรีราก
ผลกระทบทันที
ยินดีด้วย! คุณเพิ่มหน่วยความจำให้กับเว็บไซต์ของคุณสำเร็จแล้ว หลังจากทำการเปลี่ยนแปลงเหล่านี้แล้ว ให้รีเฟรชไซต์ WordPress ของคุณ คุณอาจเห็นว่าข้อผิดพลาดหน่วยความจำ PHP หมดหายไป การเพิ่มขีดจำกัดหน่วยความจำ PHP ด้วยวิธีนี้ทำให้ WordPress มี “พื้นที่คิด” มากขึ้น ช่วยให้ทำงานได้อย่างราบรื่นโดยไม่มีสะดุด
แนวทางทางเลือก – การแก้ไข .htaccess
ทำความเข้าใจ .htaccess และอิทธิพลที่มีต่อหน่วยความจำ PHP
แม้ว่า wp-config.php จะควบคุมการกำหนดค่าเฉพาะของ WordPress แต่ไฟล์ .htaccess จะมีอิทธิพลต่อวิธีที่เซิร์ฟเวอร์ Apache ของคุณจัดการกับแง่มุมต่างๆ ของเว็บไซต์ของคุณ รวมถึงการตั้งค่าหน่วยความจำ PHP .htaccess ตั้งอยู่ในโฟลเดอร์รูทของการติดตั้ง WordPress ของคุณ เป็นไฟล์กำหนดค่าที่มีประสิทธิภาพซึ่งควบคุมวิธีที่เซิร์ฟเวอร์ของคุณประมวลผลสคริปต์ PHP เหนือสิ่งอื่นใด
ที่สำคัญ การเปลี่ยนแปลงที่ทำในไฟล์ .htaccess ไม่เพียงส่งผลต่อไซต์ WordPress หลักเท่านั้น แต่ยังรวมถึงโฟลเดอร์ย่อยหรือการติดตั้งเพิ่มเติมภายในโครงสร้างไดเร็กทอรีเดียวกันด้วย หากคุณมีไซต์ WordPress ซ้อนอยู่ในโฟลเดอร์ย่อย การปรับเปลี่ยนในไฟล์ .htaccess ของการติดตั้งหลักอาจส่งผลต่อวิธีที่เซิร์ฟเวอร์ประมวลผล PHP สำหรับทั้งไซต์หลักและโฟลเดอร์ย่อยใดๆ
คำแนะนำทีละขั้นตอน: การแก้ไข .htaccess
1. ค้นหา .htaccess:
นำทางไปยังโฟลเดอร์รูทของการติดตั้ง WordPress ของคุณ ไฟล์ .htaccess ถูกวางไว้ที่นี่ โปรดทราบว่าไฟล์นี้อาจซ่อนอยู่ ดังนั้นตรวจสอบให้แน่ใจว่า File Explorer หรือไคลเอนต์ FTP ของคุณได้รับการกำหนดค่าให้แสดงไฟล์ที่ซ่อน
2. ใส่คำสั่งจำกัดหน่วยความจำ:
เปิดไฟล์ .htaccess โดยใช้โปรแกรมแก้ไขข้อความ มองหาบรรทัดที่ระบุว่า # END WordPress เหนือบรรทัดนี้โดยตรง ให้ใส่โค้ดต่อไปนี้:
php_value memory_limit 256M
คำสั่งนี้แนะนำให้เซิร์ฟเวอร์จัดสรรหน่วยความจำ 256 เมกะไบต์สำหรับสคริปต์ PHP
3. บันทึกและอัปโหลด:
บันทึกการเปลี่ยนแปลงที่ทำกับ .htaccess และอัปโหลดไฟล์ที่แก้ไขกลับไปยังเซิร์ฟเวอร์ของคุณ การดำเนินการนี้ช่วยให้แน่ใจว่าเซิร์ฟเวอร์ของคุณจัดสรรหน่วยความจำตามจำนวนที่ระบุให้กับกระบวนการ PHP
ผลกระทบทันที
เมื่อคุณแก้ไขไฟล์ .htaccess เพื่อเพิ่มขีดจำกัดหน่วยความจำ PHP แล้ว การเปลี่ยนแปลงจะมีผลทันที ไซต์ WordPress ของคุณสามารถเข้าถึงหน่วยความจำตามจำนวนที่ระบุ ทำให้สามารถจัดการงานที่ต้องใช้ทรัพยากรมากได้อย่างมีประสิทธิภาพมากขึ้น ซึ่งอาจส่งผลให้ประสิทธิภาพดีขึ้นและลดอินสแตนซ์ของข้อผิดพลาด PHP Memory Exhausted
ทำความเข้าใจกับ php.ini และผลกระทบทั่วโลกต่อการตั้งค่า PHP
ไม่เหมือนกับการกำหนดค่าเฉพาะไซต์ใน wp-config.php และคำแนะนำทั่วทั้งเซิร์ฟเวอร์ใน .htaccess ไฟล์ php.ini จะควบคุมการตั้งค่า PHP ทั่วโลกทั่วทั้งเซิร์ฟเวอร์ของคุณ การปรับค่าใน php.ini มีผลกระทบในวงกว้างมากขึ้น โดยส่งผลต่อพฤติกรรมของแอปพลิเคชัน PHP ทั้งหมดบนเซิร์ฟเวอร์ของคุณ เนื่องจากการเปลี่ยนแปลงค่าใน php.ini มีผลกระทบในวงกว้าง สภาพแวดล้อมโฮสติ้งที่ใช้ร่วมกันส่วนใหญ่จะจำกัดการเข้าถึงไฟล์นี้โดยตรงด้วยเหตุผลด้านความปลอดภัย ในกรณีเช่นนี้ จำเป็นต้องติดต่อผู้ให้บริการโฮสติ้งของคุณ
คำแนะนำทีละขั้นตอน: การแก้ไข php.ini
1. ค้นหา php.ini:
นำทางไปยังไดเรกทอรีรากของการติดตั้ง WordPress บนเซิร์ฟเวอร์ของคุณ ค้นหาไฟล์ php.ini ไม่ใช่ทุกเซิร์ฟเวอร์ที่อาจมีไฟล์นี้ เนื่องจากขึ้นอยู่กับการกำหนดค่าเซิร์ฟเวอร์ หากไม่มีอยู่ ให้ลองติดต่อผู้ให้บริการโฮสติ้งของคุณเพื่อสอบถามเกี่ยวกับความเป็นไปได้ในการสร้างหรือแก้ไข
2. แก้ไข php.ini:
เปิดไฟล์ php.ini ด้วยโปรแกรมแก้ไขข้อความ ค้นหาบรรทัดที่มี memory_limit และแก้ไขค่าตามความต้องการของคุณ ตัวอย่างเช่น ตั้งค่าเป็น memory_limit = 256M
เพื่อจัดสรรหน่วยความจำ 256 เมกะไบต์ บันทึกการเปลี่ยนแปลง
3. ตรวจสอบการเปลี่ยนแปลง:
รีสตาร์ทเว็บเซิร์ฟเวอร์ของคุณเพื่อใช้การเปลี่ยนแปลง ตรวจสอบไซต์ WordPress ของคุณเพื่อให้แน่ใจว่าสะท้อนถึงขีดจำกัดหน่วยความจำที่ปรับแล้ว ตรวจสอบประสิทธิภาพของไซต์เพื่อยืนยันผลกระทบของการจัดสรรหน่วยความจำ PHP ที่เพิ่มขึ้น
หมายเหตุสำคัญ: หากสภาพแวดล้อมโฮสติ้งของคุณไม่อนุญาตให้เข้าถึง php.ini โดยตรง คุณอาจต้องติดต่อผู้ให้บริการโฮสติ้งของคุณเพื่อขอความช่วยเหลือ ผู้ให้บริการโฮสติ้งที่ใช้ร่วมกันบางรายอาจเสนอวิธีอื่นในการแก้ไขการตั้งค่า PHP
การใช้ ini_set ใน Functions.php ของ Theme:
หากคุณลังเลเกี่ยวกับการเปลี่ยนแปลงการกำหนดค่าทั้งเซิร์ฟเวอร์ WordPress มีวิธีการแปลเป็นภาษาท้องถิ่นมากขึ้นโดยใช้ฟังก์ชัน ini_set ภายในไฟล์ Functions.php ของธีมของคุณ
1. เปิดฟังก์ชั่น php:
ภายในแดชบอร์ด WordPress ของคุณ ไปที่ “ลักษณะที่ปรากฏ” จากนั้นเลือก “ตัวแก้ไขธีม” เลือกไฟล์ function.php เพื่อแก้ไข
2. ใส่โค้ด ini_set:
เพิ่มข้อมูลโค้ดต่อไปนี้เพื่อตั้งค่าขีดจำกัดหน่วยความจำ PHP: ini_set('memory_limit', '256M');
3. บันทึกการเปลี่ยนแปลง:
บันทึกไฟล์ function.php ที่แก้ไขแล้ว วิธีนี้ช่วยให้คุณปรับขีดจำกัดหน่วยความจำสำหรับธีม WordPress ของคุณโดยเฉพาะ
ผลกระทบทันที:
การปรับเปลี่ยนเหล่านี้ช่วยให้สามารถควบคุมการจัดสรรหน่วยความจำ PHP ได้ดียิ่งขึ้น แม้ว่า php.ini จะส่งผลต่อเซิร์ฟเวอร์ทั้งหมด แต่ฟังก์ชัน ini_set ภายใน Functions.php จะปรับแต่งการตั้งค่าหน่วยความจำให้เข้ากับธีม WordPress ของคุณ ซึ่งอาจช่วยแก้ไขปัญหาที่เกี่ยวข้องกับหน่วยความจำได้ตราบเท่าที่ธีมนั้นยังทำงานอยู่
Lesser-Known Approache – ไฟล์ .user.ini
การสร้างและใช้งาน .user.ini
แม้ว่าจะไม่ได้รับการยอมรับอย่างกว้างขวางเท่ากับวิธีอื่นๆ แต่ไฟล์ .user.ini มักจะถูกใช้ในสถานการณ์โฮสติ้งที่ใช้ร่วมกัน ซึ่งผู้ใช้แต่ละรายบนเซิร์ฟเวอร์เดียวกันค้นหาวิธีปรับแต่งการตั้งค่า PHP ในแบบของคุณ ในกรณีที่ผู้ให้บริการโฮสติ้งของคุณสนับสนุนแนวทางนี้ (โปรดทราบว่าไม่ใช่ผู้ให้บริการโฮสติ้งทุกรายจะรองรับ) ไฟล์ .user.ini จะกลายเป็นเครื่องมืออันทรงคุณค่า มันอยู่ในโฟลเดอร์รูทของไซต์ WordPress ของคุณ ทำให้ผู้ใช้สามารถปรับแต่งการตั้งค่า PHP ในระดับที่เป็นส่วนตัวมากขึ้น โดยไม่ส่งผลกระทบต่อเซิร์ฟเวอร์ทั้งหมด วิธีนี้จะมีประโยชน์อย่างยิ่งในสภาพแวดล้อมโฮสติ้งที่ใช้ร่วมกันซึ่งการเข้าถึง php.ini โดยตรงอาจถูกจำกัด
คำแนะนำทีละขั้นตอน: การสร้างและใช้งาน .user.ini
1. สร้าง .user.ini:
ใช้โปรแกรมแก้ไขข้อความสร้างไฟล์เปล่าชื่อ .user.ini ไฟล์นี้จะทำหน้าที่เป็นเครื่องมือกำหนดค่า PHP ส่วนบุคคลของคุณ
2. ปรับขีดจำกัดหน่วยความจำ:
ภายในไฟล์ .user.ini ที่สร้างขึ้นใหม่ ให้แทรกบรรทัดต่อไปนี้เพื่อระบุขีดจำกัดหน่วยความจำ:
memory_limit = 256M
ปรับแต่งค่าตามความต้องการของเว็บไซต์ของคุณ
3. บันทึกและอัปโหลด:
บันทึกการเปลี่ยนแปลงที่ทำกับ .user.ini และอัปโหลดไฟล์ไปยังเซิร์ฟเวอร์ของคุณ โดยวางไว้ในโฟลเดอร์รูทของการติดตั้ง WordPress ของคุณ แนวทางนี้ช่วยให้แน่ใจว่าการตั้งค่า PHP ส่วนตัวของคุณยังคงแตกต่างจากการตั้งค่าของผู้ใช้รายอื่นบนเซิร์ฟเวอร์
รู้ว่าเมื่อใดควรขอความช่วยเหลือจากฝ่ายสนับสนุนโฮสติ้ง
แม้ว่าขั้นตอนที่อธิบายไว้ข้างต้นช่วยให้คุณสามารถควบคุมการตั้งค่าหน่วยความจำ PHP ของไซต์ WordPress ได้ แต่ก็มีบางกรณีที่การติดต่อฝ่ายสนับสนุนโฮสติ้งของคุณมีความสำคัญ หากคุณพบข้อผิดพลาด PHP Memory Exhausted บ่อยครั้ง และแทนที่จะแก้ไขสาเหตุที่แท้จริงของปัญหา คุณจะเพิ่มขีดจำกัดหน่วยความจำ PHP เป็นค่าที่สูงขึ้นอย่างสม่ำเสมอเพื่อป้องกันไม่ให้เกิดข้อผิดพลาด คุณอาจกำลังปกปิดปัญหาที่ซ่อนอยู่ นี่อาจเป็นรหัสที่ไม่มีประสิทธิภาพ หน่วยความจำรั่ว หรือปัญหาด้านประสิทธิภาพอื่นๆ หากไม่แก้ไขปัญหาหลัก เว็บไซต์ของคุณอาจยังคงเผชิญกับความท้าทายด้านประสิทธิภาพ และการอาศัยขีดจำกัดหน่วยความจำที่เพิ่มขึ้นเพียงอย่างเดียวอาจนำไปสู่ความรู้สึกผิดๆ เกี่ยวกับความเสถียรได้ นี่คือเหตุผลว่าทำไมการรู้ว่าเมื่อใดควรขอความช่วยเหลือจากทีมสนับสนุนของผู้ให้บริการโฮสติ้งของคุณจึงเป็นเรื่องสำคัญ พวกเขามีความเชี่ยวชาญในการนำทางการกำหนดค่าเซิร์ฟเวอร์ แก้ไขปัญหาข้อจำกัดที่อาจเกิดขึ้น และมอบโซลูชันที่ปรับแต่งให้เหมาะสม การสนับสนุนโฮสติ้งอาจเป็นประโยชน์อย่างยิ่งในสภาพแวดล้อมโฮสติ้งที่ใช้ร่วมกัน ซึ่งการอนุญาตหรือการเข้าถึงไฟล์บางอย่างอาจถูกจำกัดด้วยเหตุผลด้านความปลอดภัย อย่าลังเลที่จะใช้ความเชี่ยวชาญของพวกเขาเมื่อจำเป็นเพื่อให้แน่ใจว่าการแก้ไขปัญหาที่เกี่ยวข้องกับหน่วยความจำ PHP ราบรื่นและปลอดภัย
โดยสรุป คู่มือนี้ได้มอบวิธีแก้ปัญหาที่เป็นประโยชน์สำหรับการแก้ไขข้อผิดพลาด PHP Memory Exhausted ใน WordPress หากต้องการข้อมูลเชิงลึกเพิ่มเติมเกี่ยวกับการแก้ไขข้อผิดพลาดต่างๆ ของ WordPress คุณอาจพบว่าคำแนะนำเกี่ยวกับปัญหาทั่วไปของ WordPress มีประโยชน์ สำรวจแหล่งข้อมูลเหล่านี้เพื่อปรับปรุงประสิทธิภาพเว็บไซต์ของคุณและรับประกันประสบการณ์ผู้ใช้ที่ราบรื่นยิ่งขึ้น