Tôi phải chuyển hướng yêu cầu mà máy chủ web Apache nhận được, sử dụng user_agent để lọc.
Ý tưởng là nếu user_agent là "Mozilla/5.0 (Macintosh; Intel Mac OS X 12_2_1) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/15.2 Safari/605.1.15" thì proxy phải chuyển hướng yêu cầu đến máy có ip 192.168.1.40 nhưng nếu không phải user agent thì nó phải hiện ra trang chính.
Tôi có mã tiếp theo để chuyển hướng đến đúng máy:
RewriteEngine bật
RewriteCond %{HTTP_USER_AGENT} "=Mozilla/5.0 (Macintosh; Intel Mac OS X 12_2_1) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/15.2 Safari/605.1.15"
RewriteRule ^/(.*)$ http://192.168.1.40:443/$1 [L,R=302]
Nhưng tôi có một vấn đề. Khi tôi chuyển hướng đến 192.168.1.40, tôi cũng cần thêm chuỗi truy vấn để nếu yêu cầu là http://192.168.2.11/thisisthequery sau đó tôi cần chuyển hướng nó đến http://192.168.1.40/thisisthequery không chỉ là http://192.168.1.40
Tôi đã thử tiếp theo
RewriteRule ^/(.*)$ http://192.168.1.40:443/%{QUERY_STRING}$1 [L,R=302]
Nhưng nó không hoạt động, làm thế nào tôi có thể làm điều đó ??
QUAN TRỌNG
Truy vấn không tồn tại trong proxy nên nếu tôi yêu cầu http://192.168.2.11/thisisthequery Tôi nghĩ rằng nó thậm chí không cố chuyển hướng vì phản hồi là Yêu cầu không hợp lệ (443). Vì vậy, làm cách nào tôi có thể chuyển hướng trước khi proxy trả về thông báo 443??