Utilisation de Fiddler avec IIS7 Express

j'utilise IIS7 Express tout en développant mon application web. Je dois utiliser fiddler pour enquêter sur un problème et ne peut pas comprendre comment configurer les choses pour que je puisse obtenir le flux HTTP. Il semble que IIS7 express n'écoute que sur localhost, ce qui signifie que je ne peux pas accéder au ruisseau.

36
demandé sur Brettski 2011-01-16 19:15:06

4 réponses

cela n'a rien à voir avec IIS7 Express et tout à voir avec le fait que vous utilisez le trafic loopback.

Ref: https://www.fiddlerbook.com/fiddler/help/hookup.asp#Q-LocalTraffic

Cliquez Sur Les Règles > Personnaliser Les Règles.

mettez à jour votre fichier de règles comme ceci:

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

Ensuite, il suffit de visiter http://myapp dans votre navigateur.

ou adresse http://localhost.fiddler/ et Fiddler utilisera le nom d'hôte localhost au lieu de convertir en adresse IP.

53
répondu EricLaw 2017-02-04 05:37:51

une variante utile de la réponse d'Eric (qui a été éditée par Brett) serait d'utiliser oSession.port pour construire le oSession.host . Avec ce petit changement, si on a besoin de capturer le trafic express IIS sur http://localhost:12345 , on peut utiliser http://iisexpress:12345 . Cela facilitera la capture du trafic pour les sites avec des ports aléatoires créés par WebMatrix et VS. J'ai essayé avec IE et Firefox et capturer IIS Express traffic était un jeu d'enfant. Fiddler rochers!.

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; }
   //...
}
9
répondu Jaro Dunajsky 2014-09-16 13:30:27

avec la dernière version de fiddler, il vous suffit de naviguer jusqu'à localhost.fiddler: port. Cependant, le fait de faire cela seul ne m'a pas aidé et je me faisais toujours refuser l'accès en utilisant L'authentification Windows. Pour corriger cela, j'ai trouvé cette entrée de blog: http://www.parago.de/2013/01/fiddler-and-the-401-unauthorized-error-with-asp-net-web-api-using-integrated-windows-authentication-wia/

en bref, créer cette clé:

Key Path HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\ Control\Lsa\MSV1_0

Value Name Backconnection Hostnames

Type de valeur REG_MULTI_SZ

Chaîne de Valeur localhost.fiddler

3
répondu Thraka 2014-03-26 21:13:20

vous pouvez utiliser fiddler comme proxy entre vos clients et le serveur. Cela signifie que vous démarrez fiddler, puis accédez au serveur en utilisant le port de fiddler plutôt que le port habituel (par défaut pour fiddler2 est 8888 je pense). Si vous avez besoin de déboguer le serveur "live" par rapport aux clients du monde réel, vous pouvez changer la liaison de l'IIS de :80 à quelque chose d'autre, et placer le mandataire de fiddler sur le port 80.

EDIT: en passant, Par défaut fiddler2 modifie les paramètres de proxy sur votre navigateur de sorte qu'ils accèdent à tout par fiddler de toute façon (sur la machine dans laquelle fiddler est installé seulement)

0
répondu sinelaw 2011-01-16 16:20:48