ปัญหานี้ไม่ใช่เรื่องง่ายที่จะจัดการและทำให้เว็บมาสเตอร์หลายคนสับสนมาเป็นเวลานาน โดยส่วนใหญ่เกิดขึ้นบนเซิร์ฟเวอร์โฮสติ้ง Windows
ใน php อย่างเป็นทางการ http://bugs.php.net/
เราสามารถค้นหารายงานได้สองถึงสามพันหน้า แต่เจ้าหน้าที่ของพวกเขายังสูญเสียข้อมูลไป หลังจากฉบับรอง 11 ฉบับ พวกเขายังคงไม่สามารถแก้ไขปัญหาได้อย่างสมบูรณ์
http://bugs.php.net/search.php?cmd=display&search_for=PHP+has+encountered+an+Access&x=8&y=9
ปัจจุบันฉันจะเล่าประสบการณ์การบำรุงรักษาในช่วงไม่กี่ปีที่ผ่านมาให้กับคุณ วิธีแก้ปัญหาพื้นบ้านของฉันคือ
วิธีแรก:
ลบส่วนขยาย eaccelerator ใน php วิธีนี้สามารถแก้ปัญหาของคุณได้
แต่อาจเพิ่มภาระให้กับระบบเนื่องจาก eaccelerator ส่วนใหญ่จะใช้เพื่อประหยัดทรัพยากรระบบ
อินี่
ถ้าฉันช่วยคุณกำหนดค่ามัน โดยปกติ
จะลบ
zend_extension_ts="C:phpextensionseaccelerator_win_xxx.dll ใน c:/php/php.ini หรือ c:/winnt/php.ini หรือ c:/windows/php.ini "
eaccelerator.shm_size="16"
eaccelerator.cache_dir = "c:temp"
eaccelerator.enable = "1"
eaccelerator.optimizer = "1"
eaccelerator.check_mtime = "1"
eaccelerator.debug = "0"
eaccelerator.filter=""
eaccelerator.shm_max="0"
eaccelerator.shm_ttl="0"
eaccelerator.shm_prune_ช่วงเวลา = "0"
eaccelerator.shm_only="0"
eaccelerator.compress="1"
eaccelerator.compress_level="9"
ea ได้รับการพัฒนาในสภาพแวดล้อมแบบ Unix เป็นหลัก แต่ผู้เขียนเพิกเฉยว่าจริงๆ แล้ว windows ไม่เหมือนกับโฮสต์ u และไม่มีกลไกการแบ่งปันหน่วยความจำของโฮสต์ u ฉันหวังว่า 0.9.5 จะสามารถแก้ไขได้
แน่นอนว่าหากปัญหาบนเครื่องของคุณไม่ร้ายแรงก็แนะนำให้เก็บไว้ ea เป็นซอฟต์แวร์ Php cache + Acceleration ที่ยอดเยี่ยมมากที่ใช้กับ zo ซึ่งจะช่วยลดภาระของระบบ ประมาณ 50% -80% และปรับปรุงความสามารถในการรับน้ำหนักความเร็วและประสิทธิภาพประมาณ 200%
ความเป็นไปได้ประการที่สอง
session_save_path จำเป็นต้องตั้งค่าเส้นทางจริง และไดเร็กทอรีต้องการสิทธิ์ของทุกคน ซึ่งคล้ายกับ 0777 ของโฮสต์ U
ความเป็นไปได้ที่สาม
c:/winnt/temp หรือ c:/windows/temp
นอกจากนี้ยังต้องได้รับอนุญาตจากทุกคน เช่นเดียวกับ 0777 ของโฮสต์ U
ความเป็นไปได้ที่สี่คือหน่วยความจำของคุณไม่เพียงพออย่างจริงจัง ตรวจสอบหากมีปัญหา โปรดเพิ่มหน่วยความจำเพิ่มเติมในแต่ละครั้ง เช่น 1G หน่วยความจำ วิธีที่ดีที่สุดคือเพิ่มหน่วยความจำ 512M ที่เหมือนกัน หน่วยความจำ. มิฉะนั้นจะไม่ได้เปิดใช้งานช่องสัญญาณคู่และเอฟเฟกต์จะอยู่ในระดับปานกลาง
ความเป็นไปได้ที่ห้า
การรวมกันของ ZendOptimizer และ php ไม่ค่อยดีนัก ลองเปลี่ยนเวอร์ชันแล้วดูว่าชุดค่าผสมที่เสถียรกว่าในปัจจุบันคือ
php4.3.11+โซ 2.5.10a
หรือ php4.4.1+zo 3.0 beta2
ความเป็นไปได้ประการที่หก
ส่วนใหญ่สำหรับผู้ใช้ที่ใช้ win2003 พวกเขาได้กำหนดขีดจำกัดในกลุ่มแอปพลิเคชัน เช่น ระยะเวลาในการรีไซเคิล จำนวนหน่วยความจำที่ใช้ ฯลฯ การตั้งค่าเหล่านี้จะทำให้เกิดข้อผิดพลาด PHP แบบคลาสสิกนี้อย่างหลีกเลี่ยงไม่ได้หลังจากการทดสอบหลายร้อยครั้ง รับรองว่าปัญหาจะเกิดขึ้นที่นี่