comment: 0
Apache session expire
กราบเรียนมิตรรักแฟนเพลง
วันนี้ไม่ได้มาแนะนำโปรแกรมน่าใช้เหมือนบทความก่อนๆ เพียงแต่วันนี้จะเข้ามาเขียนปัญหาที่เจอของงานประจำ ที่ผมหาใช้วิธีแก้ปัญหาเอาเอง ซึ่งมันก็ไม่ได้ซับซ้อนอะไรครับ พร้อมแล้วมาเริ่มกันเลย
เรื่องมีอยู่ว่าเมื่อก่อนนู้นที่คณะ มีเครื่องแม่ข่ายที่ให้บริการเว็บไซต์ภายในของคณะโดยแยกให้บริการแก่หน่วยงานภายในคณะซึ่งในตอนนั้นได้ติดตั้งเว็บเซิร์ฟเวอร์สำเร็จรูปที่ติดตั้งง่ายๆเช่น Appserv ซึ่งในแต่ก่อนความต้องการใช้ทรัพยากรของเว็บเซิร์ฟเวอร์มันก็พอเพียงอยู่หรอก แต่ปัจจุบันมันไม่ได้แล้ว เพราะว่าหน่วยงานในคณะมากขึ้นเว็บไซต์ก็มากขึ้น แถมระยะหลังๆมานี่ผมติดตั้งให้หน่วยงานภายในใช้เว็บไซต์สำเร็จรูปทั้งนั้น(joomla) ซึ่งในตอนนี้ 23 หน่วยงานเข้าไปแล้ว !! ซึ่งยังไม่รวมกับเว็บไซต์ที่ไม่ใช่เว็บไซต์สำเร็จรูป และระบบที่มาฝากไว้กับเซิร์ฟเวอร์ของคณะ.. บอกได้คำเดียวว่าเยอะ !!! ซึ่งปัญหาที่เจอคือ session ไม่เพียงพอเพราะให้บริการเว็บไซต์เยอะมากโดยทุกเว็บจะมีข้อมูล session ที่ใช้ในการเชื่อมต่อ บางคนอาจงงกับคำว่า session อธิบายง่ายๆก็คือ เมื่อคุณเปิดเว็บ login.psu.ac.th ของศูนย์คอมผ่านทางเว็บบราวเซอร์(firefox,ie,chrome)เพื่อทำการยืนยันตัวตนระบบจะสร้างข้อมูลการเชื่อมต่อระหว่างผู้ใช้กับเว็บ login.psu.ac.th นั่นแหละครับคือ session จากนั้นไปที่ปัญหาที่เจอต่อครับเมื่อคนใช้งานเยอะ session การเชื่อมต่อมักจะไม่พอใช้เช่น เว็บเซิร์ฟเวอร์สร้างให้ไม่พอใช้ ประสิทธิของเว็บเซิร์ฟเวอร์ไม่สเถียรพอ โค๊ดของโปรแกรมหรือเว็บไซต์เราไม่มีการจัดการ session ที่ดีพอ ซึ่งทั้งที่กล่าวมาก็เป็นสาเหตุทำให้ session ของเว็บเซิร์ฟเวอร์ของเราไม่เพียงพอทั้งสิ้น บางคนอาจสงสัยว่า session ไม่มีไม่ได้เหรอคำตอบคือได้ แต่เดี๋ยวนี้การยืนยันตัวตนในการเข้าใช้งานเว็บไซต์ต่างๆ ต่างก็ใช้ session ในการเก็บข้อมูลทั้งนั้น ซึ่งหากไม่มีการใช้งาน session ท่านก็จะไม่สามารถยืนยันตัวตนหรือ login เข้าสู่เว็บไซต์เพื่อทำงานต่อได้ (เขียนไปเขียนมาเริ่มเยอะ ตอนแรกคิดว่าจะเขียนสั้นๆซักหน่อย..) เมื่อเป็นอย่างนั้นแล้วจึงต้องมีการจัดการ การบริหารการใช้งาน session ที่มีอยู่ให้พอเพียงกับปริมาณการใช้งานโดยปกติแล้วการทำงานของ session มักจะไม่ค่อยมีปัญหาแต่หลังๆ เกิดปัญหากับที่คณะเนื่องจาก เว็บหรือโปรแกรมที่ติดตั้งบนเซิร์ฟเวอร์ของคณะไม่มีการคืนค่า session (ไม่มีการตั้งเวลาให้เก็บข้อมูล session ในเวลาที่เหมาะสม)จึงทำให้เกิดปัญหา session เต็มทั้งๆที่บาง session ไม่มีผู้ใช้งานแล้วจึงทำแก้ปัญหาดังต่อไปนี้
1.ปรับตั้งค่า session time ของ joomla ให้ใช้เวลาน้อยที่สุด
2.แจ้งผู้ดูแลเว็บไซต์ หรือโปรแกรมที่ฝากไว้ที่เครื่องเซิร์ฟเวอร์ของคณะให้แก้ไขหรือปรับปรุงเวลาการใช้งานค่า session
3.ปรับค่าในไฟล์ php.ini ถ้าเป็นวินโดวส์อยู่ที่ c:/windows/php.ini search ดูคำว่า
ประมาณบรรทัดที่ 983
;Document expires after n minutes.
session.cache_expire = 180 //เวลาที่ session หมดอายุ default จะเป็น 180 นาที ลองปรับเปลี่ยนเป็น 10 หรือ 15 นาทีดูครับ
เพียงเท่านี้เราก็จะสามารถแก้ไขปัญหา session เต็มหรือค้างได้แล้วครับ
บันทึกอื่นๆ
- เก่ากว่า « โปรแกรมเก็บไฟล์ฟรีบนเว็บ Dropbox
- ใหม่กว่า » การปรับแต่งค่า robots.txt ใน joo...
Comment on this Post