Để làm cho chế độ bảo trì của bạn linh hoạt hơn, hãy đặt 503 khi có tệp đặc biệt, ala:
RewriteEngine on
RewriteCond %{DOCUMENT_ROOT}/.maintenance -f
RewriteRule .* - [R=503]
LƯU Ý: Vị trí của DOCUMENT_ROOT có thể khác nhau giữa httpd 2.2 và 2.4
Bằng cách này, tất cả những gì bạn cần làm là "chạm /path/to/docroot/.maintenance" và trang web của bạn sẽ ngay lập tức bắt đầu quay lại 503. Sau đó, để làm cho tất cả thuần túy, hãy tạo một trang lỗi html được định dạng độc đáo và thêm trang này vào tệp cấu hình của máy chủ apache chính xác:
ProxyErrorOverride on
ErrorDocument 503 /error/503.html
Và đối với điểm thưởng nếu bạn có nhiều máy chủ web, hãy tạo vị trí .maintenance trên hệ thống tệp được chia sẻ hoặc để có thêm điểm thưởng:
pdsh -w $web1_ip,$web2_ip,$web3_ip "sudo touch /path/to/docroot/.maintenance"
Ưu điểm của việc tạo tệp chế độ bảo trì dựa trên là nó hoạt động khi ứng dụng của bạn không hoạt động, nó nhanh chóng và đơn giản và dễ dàng hơn để xử lý proxy bộ nhớ đệm trước vì bạn có thể xử lý tất cả 503 phụ trợ trong một cú trượt.
Nguồn: