Использование Fiddler с IIS7 Express - PullRequest
37 голосов
/ 16 января 2011

Я использую IIS7 Express при разработке своего веб-приложения.Мне нужно использовать fiddler, чтобы исследовать проблему, и я не могу понять, как настроить вещи, чтобы я мог получить поток HTTP.Кажется, что IIS7 express будет прослушивать только локальный хост, что означает, что я не могу получить доступ к потоку.

Ответы [ 4 ]

53 голосов
/ 16 января 2011

Это не имеет ничего общего с IIS7 Express и связано с тем, что вы используете петлевой трафик.

Ссылка: https://www.fiddlerbook.com/fiddler/help/hookup.asp#Q-LocalTraffic

Нажмите Правила> Настроить правила.

Обновите свой файл правил следующим образом:

static function OnBeforeRequest(oSession:Fiddler.Session)
{
    if (oSession.HostnameIs("MYAPP")) { oSession.host = "localhost:portnumber"; }
}

Затем просто зайдите в браузер http://myapp.

Или используйте адрес http://localhost.fiddler/, и Fiddler будет использоватьимя хоста localhost вместо преобразования в IP-адрес.

10 голосов
/ 21 января 2011

Одним из полезных вариантов ответа Эрика (отредактированного Бреттом) было бы использование oSession.port для построения oSession.host. С этим небольшим изменением, если нужно захватить экспресс-трафик IIS на http://localhost:12345, они могут использовать http://iisexpress:12345. Это облегчит захват трафика для сайтов со случайными портами, созданными WebMatrix и VS. Я попробовал это с IE и Firefox, и захват трафика IIS Express был быстрым. Скрипач качается!

static function OnBeforeRequest(oSession:Fiddler.Session)
{
   //...
   // workaround the iisexpress limitation
   // URL http://iisexpress:port can be used for capturing IIS Express traffic
   if (oSession.HostnameIs("iisexpress")) { oSession.host = "localhost:"+oSession.port; }
   //...
}
4 голосов
/ 27 марта 2014

В последней версии fiddler вам нужно только перейти к localhost.fiddler: port. Однако одно только это мне не помогло, и я все еще получал отказ в доступе при использовании аутентификации Windows. Чтобы исправить это, я нашел эту запись в блоге: http://www.parago.de/2013/01/fiddler-and-the-401-unauthorized-error-with-asp-net-web-api-using-integrated-windows-authentication-wia/

Короче, создайте этот ключ:

Путь ключа HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ Lsa \ MSV1_0

Имя значения BackConnectionHostNames

Тип значения REG_MULTI_SZ

Строковое значение localhost.fiddler

0 голосов
/ 16 января 2011

Вы можете использовать fiddler в качестве прокси между вашими клиентами и сервером.Это означает, что вы запускаете fiddler, а затем получаете доступ к серверу, используя порт fiddler, а не обычный порт (я думаю, по умолчанию для fiddler2 установлено значение 8888).Если вам нужно отладить сервер «вживую» по сравнению с реальными клиентами, вы можете изменить привязку IIS с: 80 на что-то другое и поместить прокси-сервер fiddler на порт 80.

РЕДАКТИРОВАТЬ: Кстати, путемfiddler2 по умолчанию изменяет настройки прокси в ваших браузерах, чтобы они все равно получали доступ через fiddler (на компьютере, на котором установлен только fiddler)

...