Câu hỏi này đã được hỏi trên các diễn đàn AWS và câu trả lời là thiết lập một vhost mặc định xử lý lưu lượng trên địa chỉ IP trống và không thực hiện bất kỳ chuyển hướng nào. Điều này có nghĩa là người dùng bình thường đánh vào địa chỉ IP của bạn cũng sẽ không được chuyển hướng.
Ngoài ra, bạn có thể chỉ định phần đường dẫn của URL mà bạn muốn ELB yêu cầu và bỏ qua đường dẫn đó bằng cách thêm một RewriteCond khác:
RewriteCond %{HTTP_HOST} !^www\.example\.com$ [NC]
RewriteCond %{REQUEST_URI} !^/health-check$
RewriteRule ^ http://www.example.com/$1 [R=301,L]
Người dùng bình thường nhấn URL đó sẽ không được chuyển hướng.
Bạn cũng có thể sử dụng kỹ thuật tương tự để phát hiện Tác nhân người dùng của ELB.
RewriteCond %{HTTP_HOST} !^www\.example\.com$ [NC]
RewriteCond %{HTTP_USER_AGENT} !^ELB-HealthChecker
RewriteRule ^ http://www.example.com/$1 [R=301,L]
Người dùng bình thường giả mạo Tác nhân người dùng của họ sẽ không được chuyển hướng.
Hoặc địa chỉ IP nội bộ của ELB.
RewriteCond %{HTTP_HOST} !^www\.example\.com$ [NC]
RewriteCond %{REMOTE_ADDR} !^10\.
RewriteRule ^ http://www.example.com/$1 [R=301,L]
Để tùy chọn này hoạt động, bạn sẽ yêu cầu mod_rpaf
(đối với Apache 2.2) hoặc mod_remoteip
(đối với Apache 2.4) để sửa đổi REMOTE_ADDR
biến để chứa phần chính xác của nội dung của X-Forwarded-For
tiêu đề. Miễn là bạn thiết lập chính xác, người dùng bình thường không thể tránh phản hồi chuyển hướng.