Настройте HTTP-прокси для вставки заголовка - PullRequest
44 голосов
/ 30 сентября 2008

Мне нужно протестировать HTTP-взаимодействие с клиентом, которое я бы предпочел не изменять. Мне нужно проверить поведение сервера, когда запросы клиента содержат определенный статический заголовок.

Я думаю, что самый простой способ запустить этот тест - настроить HTTP-прокси, который вставляет заголовок при каждом запросе. Какой самый простой способ настроить это?

Ответы [ 7 ]

69 голосов
/ 30 сентября 2008

Я делаю что-то подобное в своей среде разработки, настраивая Apache на порту 80 в качестве прокси-сервера для сервера приложений на порту 8080 со следующей конфигурацией Apache:

NameVirtualHost *
<VirtualHost *>
   <Proxy http://127.0.0.1:8080/*>
      Allow from all
   </Proxy>
   <LocationMatch "/myapp">
      ProxyPass http://127.0.0.1:8080/myapp
      ProxyPassReverse http://127.0.0.1:8080/myapp
      Header add myheader "myvalue"
      RequestHeader set myheader "myvalue"   
   </LocationMatch>
</VirtualHost>

См. LocationMatch и RequestHeader документация.

Добавляет заголовок myheader: myvalue к запросам, идущим на сервер приложений.

15 голосов
/ 01 октября 2008

Вы также можете установить Fiddler (http://www.fiddler2.com/fiddler2/), который очень прост в установке (проще, чем Apache, например).

После запуска он зарегистрируется как системный прокси. Затем откройте меню «Правила» и выберите «Настроить правила ...», чтобы открыть файл JScript, позволяющий настраивать запросы.

Чтобы добавить пользовательский заголовок, просто добавьте строку в функцию OnBeforeRequest:

oSession.oRequest.headers.Add("MyHeader", "MyValue");
3 голосов
/ 30 сентября 2008

я бы попробовал tinyproxy . на самом деле, лучше всего было бы встроить там язык сценариев ... звучит как идеальная работа для Lua , особенно если посмотреть, насколько хорошо он работает для mysqlproxy

2 голосов
/ 30 сентября 2008

У меня были коллеги, которые использовали для этого Burp («интерактивный прокси-сервер HTTP / S для атаки и тестирования веб-приложений»). Вы также можете использовать Fiddler («прокси-сервер отладки HTTP»).

1 голос
/ 06 июня 2013

Вместо того, чтобы использовать прокси, я использую плагин Firefox «Изменить заголовки» для вставки заголовков (в моем случае, для подделки имени входа с использованием единого входа, чтобы я мог тестировать как разных людей ).

1 голос
/ 30 сентября 2008

Используйте http://www.proxomitron.info и установите нужный заголовок и т. Д.

0 голосов
/ 25 июля 2015

Если у вас есть ruby ​​в вашей системе, как насчет небольшого Ruby Proxy, использующего Sinatra (обязательно установите Sinatra Gem). Это должно быть проще, чем настройка apache. Код можно найти здесь.

...