พื้นฐาน Joomla

การสร้าง Sub Menu
เมนูย่อยก็เป็นอีกเมนูหนึ่งที่สำคัญไม่แพ้กัน ไม่ว่าจะเป็นการสร้างเพื่อเชื่อมโยงเนื้อหา ในกลุ่ม ห...

เทคนิค Joomla

การสร้าง Virtual Host ใน Apache
จากบทความที่ได้ติดตั้งและใช้งานโปรแกรม AppServ ไป ซึ่งภายในโปรแกรมนั้นก็มีโปรแกรมจำลอง Web Serv...

แนะนำ Extension

สร้างแผนที่ด้วย Phoca Map
สมัยนี้ เทคโนโลยีกว้างไกล เว็บไซต์ของเราก็ต้องกว้างตามเช่นกัน ทำเว็บทั้งที อยากจะให้คนเค้ารู้ว่...
( 2 Votes )
fatal error กรณีที่จะกล่าวถึงนี้ อาจจะเกิดขึ้นได้จากหลายสาเหตุ ซึ่งอาจจะไม่ใช่แนวทางดังต่อไปนี้ก็ได้ แต่ที่นำมาเสนอ เพราะจะได้เป็นแนวทางในการแก้ปัญหาที่เกิดจากรณีเดียวกัน

Fatal error: Allowed memory size of 8388608 bytes exhausted
Fatal error: Maximum execution time of 30 seconds exceeded

2 Error นี้ มักจะพบได้บ่อย เมื่อทำการติดตั้ง Extensions เพิ่มเติมให้กับ Joomla หรือการอัพโหลดไฟล์ขนาดใหญ่ผ่าน Joomla ซึ่งทั้ง 2 นี้ก็แปลความได้ว่า

Fatal error: Allowed memory size of 8388608 bytes exhausted

มีการใช้งานหน่วยความจำเกินที่กำหนดไว้ คือ 8388608 / 1024 = 8192 / 1024 = 8 เมก

Fatal error: Maximum execution time of 30 seconds exceeded

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

วิธีแก้ไขก็คือ บอกกล่าว PHP อีกแล้วครับท่าน จะทำอะไรก็ต้องขอกันก่อน เหมือนกับกรณี Please input a file for upload นั่นแหล่ะครับ แก้ไขโดยการนำไฟล์ htaccess.txt มาเพิ่มข้อความนี้ลงไป

php_value max_execution_time 60

สำหรับเปลี่ยนแปลงค่าจาก 30 วินาที เป็น 60 วินาที

php_value memory_limit "12M"

และเปลี่ยนหน่วยความจำที่ใช้เพิ่มขึ้นจาก 8 เมก เป็น 12 เมก

จากนั้นก็เปลี่ยนชื่อไฟล์เป็น .htaccess แล้วอัพโหลดขึ้นไปไว้ที่เดียวกับ Joomla ครับ

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

Fatal Error