Configure Fiddler as a "reverse proxy" on Windows
(for Mac, see the link in the Partizano comment below)
I know that there is already an answer offering this, however I want to give explanations and instructions for this, which Telerik had to provide, as well as cover some "gotchas", so here goes:
What does it mean to configure Fiddler as a "reverse proxy"?
- By default, Fiddler only monitors outgoing requests from the computer on which you run Fiddler
- To track incoming requests, you need to configure Fiddler to work as a "reverse proxy"
- This means that you need to install Fiddler as a “proxy” that will intercept incoming HTTP requests that are sent to a specific port (8888) on the computer where you want to listen to incoming requests. Fiddler then forwards these requests to a web server on the same computer, sending them to a regular port for HTTP requests (usually port 80 or 443 for https). It is really very fast and easy to do!
- The standard way to set this with Fiddler is to force Fiddler to intercept the entire request sent to port “8888” (since this will usually not be used by anything else, although you can just as easily use another port)
- Then you need to use the registry editor to force Fiddler to forward any HTTP requests that Fiddler receives to port 8888 so that they are redirected to the standard http port (port 80, port 443 for the https request, or another custom port that your web is configured to server)
NOTE. For this to work, any request you want to intercept must be sent to port 8888
You do this by adding: 8888 to your hostname, for example, for an MVC route, for example:
Http: // myhostname: 8888 / controller / action
Walkthrough
Make sure Fiddler can accept remote HTTP requests on port 8888:
Run Fiddler as an administrator . Choose Tools> Fiddler Settings> Connections and make sure “Allow remote computers to connect” is checked and “Fiddler listenens on port” is set to 8888:

Configure Fiddler to forward requests received on port 8888 to port 80
- Close Fiddler
- Launch REGEDIT
- Create a new DWORD named ReverseProxyForPort inside HKEY_CURRENT_USER \ SOFTWARE \ Microsoft \ Fiddler2.
- Now set the DWORD value for the local port to which you want to redirect incoming traffic (usually this is port 80 for a standard HTTP server).
- To do this, right-click the created DWORD and select Modify. Make sure Base is set to Decimal and enter 80 (or another port) as the value data:
Verify that port 8888 is open on the firewall
- You must make sure that port 8888 is open to external requests (it will not be the default if your server is protected by a firewall).
What is it! Fiddler should now be configured as a reverse proxy to intercept all requests from port 8888 (so you can view them in Fiddler), and then it will redirect them to your web server for actual management.
Check Request
- Restart fiddler
- To verify that Fiddler intercepts external requests, open a browser on the same computer on which you installed Fiddler as a reverse proxy. Go to the browser http://127.0.0.1:8888
- This test makes a basic request to port 8888
- You should see a request intercepted by Fiddler
- Now you can test the request from another computer, for example by making a request from a browser on another computer like this (where "remoteHostname" is the host name on the computer on which you installed Fiddler as a reverse proxy)
Http: // RemoteHostName: 8888 / controller / action
- Alternatively, you can compose a request using another instance of Fiddler on the remote computer using a URL similar to the one above. This will allow you to execute a GET or POST request.
IMPORTANT: after you finish viewing your requests, go back to Tools> Fiddler Settings> Connections and remove the "Allow remote computers to connect" option, otherwise third parties will be able to scan traffic through your server
Chris Halcrow Aug 01 '16 at 1:11 2016-08-01 01:11
source share