พื้นฐาน Joomla

การติดตั้งโปรแกรม AppServ
โปรแกรม AppServ เป็นโปรแกรมที่รวบรวมโปรแกรมย่อยสำคัญไว้ 3 โปรแกรมด้วยกัน คือ Web Server (Apache...

เทคนิค Joomla

Install Joomla ใหม่ ให้เหมือนเก่า
บางครั้ง เราก็ไม่สามารถที่จะอัพโหลด Joomla ได้ตามปกติ โดยเฉพาะกับฐานข้อมูลที่มีขนาดใหญ่ (ไฟล์ ...

แนะนำ Extension

CCNews Letter ส่งอีเมลถึงสมาชิก
คอมโพเน้นท์สำหรับส่งอีเมลข่าวสารให้สำหรับสมาชิก สำหรับ CCNewsLetter จะมาพร้อมกับโมดูลอีก 1 ตั...
( 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