Мне нужно перенаправить запрос, который получает веб-сервер Apache, используя user_agent для фильтрации.
Идея состоит в том, что если user_agent — «Mozilla/5.0 (Macintosh; Intel Mac OS X 12_2_1) AppleWebKit/605.1.15 (KHTML, например Gecko) Version/15.2 Safari/605.1.15», то прокси должен перенаправить запрос на машина с ip 192.168.1.40 но если юзер агент не то она должна показывать главную страницу.
У меня есть следующий код для перенаправления на правильный компьютер:
RewriteEngine включен
RewriteCond %{HTTP_USER_AGENT} "=Mozilla/5.0 (Macintosh; Intel Mac OS X 12_2_1) AppleWebKit/605.1.15 (KHTML, например, Gecko) Version/15.2 Safari/605.1.15"
Правило перезаписи ^/(.*)$ http://192.168.1.40:443/$1 [L,R=302]
Но у меня есть проблема. Когда я перенаправляюсь на 192.168.1.40, мне также нужно добавить строку запроса, поэтому, если запрос http://192.168.2.11/thisisthequery тогда мне нужно перенаправить его на http://192.168.1.40/thisisthequery не просто http://192.168.1.40
Я пробовал следующий
Правило перезаписи ^/(.*)$ http://192.168.1.40:443/%{QUERY_STRING}$1 [L,R=302]
Но это не работает, как я могу это сделать??
ВАЖНЫЙ
Запрос не существует в прокси, поэтому, если я запрошу http://192.168.2.11/thisisthequery Я думаю, что он даже не пытается перенаправить, потому что ответ является неверным запросом (443). Итак, как я могу перенаправить до того, как прокси вернет сообщение 443?