หากต้องการทำให้โหมดการบำรุงรักษาของคุณมีความยืดหยุ่นยิ่งขึ้นให้ตั้งค่า 503 เมื่อมีไฟล์พิเศษเช่น
RewriteEngine on
RewriteCond %{DOCUMENT_ROOT}/.maintenance -f
RewriteRule .* - [R=503]
หมายเหตุ: ตำแหน่งของ DOCUMENT_ROOT อาจแตกต่างกันระหว่าง httpd 2.2 และ 2.4
วิธีนี้เป็นสิ่งที่คุณต้องทำคือ "touch /path/to/docroot/.maintenance" และเว็บไซต์ของคุณจะเริ่มส่งคืน 503 ทันที จากนั้นเพื่อให้มันหมดจดสร้างหน้าข้อผิดพลาดในรูปแบบ html ที่กำหนดเองและเพิ่มสิ่งนี้ไปยังไฟล์ config ของเซิร์ฟเวอร์ Apache ที่ถูกต้อง:
ProxyErrorOverride on
ErrorDocument 503 /error/503.html
และสำหรับคะแนนโบนัสหากคุณมีเว็บเซิร์ฟเวอร์หลายแห่งอาจทำให้ตำแหน่งของการบำรุงรักษาบนระบบไฟล์ที่ใช้ร่วมกันหรือสำหรับคะแนนโบนัสมากยิ่งขึ้น:
pdsh -w $web1_ip,$web2_ip,$web3_ip "sudo touch /path/to/docroot/.maintenance"
ข้อได้เปรียบของการสร้างไฟล์โหมดการบำรุงรักษาคือใช้งานได้เมื่อแอปพลิเคชันของคุณไม่รวดเร็วและง่ายกว่าและง่ายกว่าสำหรับพร็อกซีแคชส่วนหน้าในการจัดการเนื่องจากคุณสามารถจัดการแบ็คเอนด์ 503 ทั้งหมดในคราวเดียว
แหล่งที่มา: