Nếu bạn đang sử dụng mod_jk và tomcat nối này dự kiến hành vi. Nếu bạn sử dụng một cái gì đó giống như
ErrorDocument 503 "foo"
bạn sẽ thấy 'foo' render trên trang hoặc
ErrorDocument 503 "http://www.somedomain.com"
mà sẽ hướng dẫn bạn đến somedomain.com thành công. Nhưng nếu bạn sử dụng một cái gì đó như
ErrorDocument 503 /maintenance.html
Apache sẽ không thể tìm thấy [DocumentRoot] /maintenance.html vì nó đang tìm trong bối cảnh đầu nối tomcat. Bạn cần phải ngắt kết nối trình kết nối của mình và yêu cầu Apache phân phối nội dung tĩnh từ một vị trí khác.
Đây là hướng dẫn tốt để giúp bạn bắt đầu với mod_jk. Custom Error Pages with Apache and Tomcat Connectors
chỉnh sửa: Đây là giải pháp tôi đã sử dụng để có được 503 trang tùy chỉnh để hiển thị chính xác.
Đầu tiên, tất cả các trang lỗi tùy chỉnh của chúng tôi được đặt trước bằng mã lỗi vì có khả năng ứng dụng web của chúng tôi sẽ không chứa các tệp có các mã trạng thái này làm gốc của tên tệp. Vì vậy, sử dụng ví dụ của bạn, tôi sẽ có một cái gì đó giống như ba tập tin sau đây trong một thư mục gọi là 'custom_errors':
/503_maintenance.html
/503_maintenance.css
/503_corp_logo.png
Điều này làm cho nó dễ dàng để loại trừ bất kỳ các file liên quan đến các trang lỗi tùy chỉnh từ jk gắn kết. Trong file vhost của chúng tôi, sau đó chúng tôi thiết lập các vị trí tài liệu lỗi và bí danh
#Alias the location of your custom error page files
Alias /error/ /var/apache2/2.2/htdocs/custom_errors
ErrorDocument 503 /error/503_maintenance.html
#mount the core tomcat application
JkMount /* myWorker
#set the 503 code if myWorker is unavailable
#and exclude the 503 pages from the tomcat/jboss application
JkMount /* myWorker;use_server_errors=503
JkUnMount /503* myWorker
này về cơ bản cho Apache và mod_jk không để gắn kết bất kỳ tập tin với tiền tố 503 trong bối cảnh đầu nối tomcat và sẽ xem xét tại địa phương đối với những file thay thế. Nếu bạn không muốn sử dụng một vị trí liên quan đến DocumentRoot, bạn có thể sử dụng và bí danh như tôi đã làm.
có nó hoạt động trên một máy. Nhưng trên một máy khác, nó chuyển hướng nhưng trang bảo trì không được hiển thị. Thay vì trang bảo trì, nó hiển thị 'maintenance.html' trên trình duyệt web khi tôi kiểm tra dừng tomcat. Có mẹo hay mẹo nào ở đây không? – user465465