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