Using ngrok with IISExpress on windows

So it turns out that there was nothing to change in the ApplicationHost.config file, AND I was looking at the wrong ApplicationHost.config file (the real file is normally hidden from view in C:/Windows/System32/inetsrv/Config, but you can open it in Notepad from a Command Prompt that has elevated privileges (Run as Administrator)). The actual binding info was:

<binding protocol="http" bindingInformation="*:80:thing.somedomain.com" />

Which is what matched what IIS was showing. That said, what I needed to change was how I invoked ngrok:

ngrok http -host-header=thing.somedomain.com:80

And that was it. I also allowed external traffic to the hostname with this:

netsh http add urlacl url=http://thing.somedomain.com/ user=everyone

There is a way to make it easier. Let's say your IISExpress website is http://localhost:63254

Just start ngrok like this:

ngrok http -host-header=rewrite localhost:63254

Tags:

Iis

Ngrok