Настройка прокси-сервера HTTP для вставки заголовка
Мне нужно протестировать некоторые HTTP-взаимодействия с клиентом, который я бы предпочел не изменять. То, что мне нужно проверить, - это поведение сервера, когда клиентские запросы включают определенный статический заголовок.
Я думаю, что самый простой способ запустить этот тест - настроить HTTP-прокси, который вставляет заголовок для каждого запроса. Каким будет самый простой способ настроить это?
Ответы
Ответ 1
Я делаю что-то подобное в своей среде разработки, настраивая 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 для запросов на сервер приложений.
Ответ 2
Вы также можете установить Fiddler (http://www.fiddler2.com/fiddler2/), который очень прост в установке (проще, чем Apache, например).
После запуска он зарегистрируется как системный прокси. Затем откройте меню "Правила" и выберите "Настроить правила...", чтобы открыть файл JScript, который позволяет настраивать запросы.
Чтобы добавить пользовательский заголовок, просто добавьте строку в функцию OnBeforeRequest
:
oSession.oRequest.headers.Add("MyHeader", "MyValue");
Ответ 3
Я бы попробовал tinyproxy. на самом деле лучшим вариантом было бы встраивать в него скриптовый язык... звучит как идеальная работа для Lua, особенно после просмотра как хорошо он работал для mysqlproxy
Ответ 4
У меня были сотрудники, которые использовали Burp ( "интерактивный прокси-сервер HTTP/S для атаки и тестирования веб-приложений" ) для этого. Вы также можете использовать Fiddler ( "HTTP-отладочный прокси" ).
Ответ 5
Используйте http://www.proxomitron.info и настройте нужный заголовок и т.д.
Ответ 6
Вместо того, чтобы использовать прокси-сервер, я использую плагин Firefox "Modify Headers" для вставки заголовков (в моем случае, чтобы подделать войдите с помощью единого входа, чтобы я мог тестировать себя как разные люди).
Ответ 7
Если у вас есть рубин в вашей системе, как насчет небольшого прокси-сервера Ruby с помощью Sinatra (обязательно установите Sinatra Gem). Это должно быть проще, чем установка apache. Код можно найти здесь.