IIS Reverse Proxy to Web Apps (Nginx, Python, PHP, Golang, Java)
2 min readDec 22, 2019
In this section we will be going over how to get IIS to talk to our web applications (nginx, python, apache, golang, java). You may be stuck in this situation due to an exclusive dependency on IIS by an application or service at your company or organization and you do not have an easy replacement or alternative to switch to.
Make sure you have IIS installed on your system…
- If you don’t, go here
Make sure you have URL Rewrite & Application Request Routing installed
- URL Rewrite: https://www.iis.net/downloads/microsoft/url-rewrite
- Application Request Routing: https://www.iis.net/downloads/microsoft/application-request-routing
Setting Up IIS
- Launch IIS: Start Menu > IIS
- Make sure you have an IIS Website for your web app. If you don’t already have a dedicated IIS Website for your web app, go ahead and create one. (Choose any directory, the actual directory doesn’t matter as we will not be using the directory.)
- Select Your IIS Server > Select your web site > Select URL Rewrite
- On the top-right corner, click Add Rule(s) > Under Inbound & Outbound Rules > select Reverse Proxy
- If you are asked to enable the Application Request Routing functionality, click Yes.
You will be prompted with the Reverse Proxy dialog. Complete the fields as follows…
- …HTTP requests wil be forwarded: http://{url_and_port_of_your_web_app}
- example: http://127.0.0.1:8022
- Check Enable SSL Offloading this will mean IIS will handle TLS so you only have to do it once on IIS
- From: http://{url_and_port_of_your_web_app} (same as above)
- To: {your_public_domain.com}
- example: your_public_domain.com
That’s it!
Want More?
Website: https://intully.com
FB Community: https://intully.com