Facebook Twitter Instagram
    TecAdmin
    • Home
    • FeedBack
    • Submit Article
    • About Us
    Facebook Twitter Instagram
    TecAdmin
    You are at:Home»Windows Tutorials»How to Setup Reverse Proxy on IIS with URL-Rewrite

    How to Setup Reverse Proxy on IIS with URL-Rewrite

    By RahulJuly 3, 20182 Mins Read

    Most of the system administrator is aware of the reverse proxy. It is a type of proxy server which fetches the resources from one or more computers on clients requests and send back to the client. In simple terms, it works as an intermediate server, which listens to clients query. Then requests to server bases of clients query and returns results to client sent by the server. This tutorial will help you to setup reverse proxy using IIS with URL rewrite and application request routing extension.

    Advertisement

    We can configure reverse proxy in IIS using URL Rewrite module. This is similar to the mod_rewrite module in Apache. Before starting work make sure you have installed and enabled URL Rewrite module in IIS server.

    What is URL Rewrite Module?

    URL Rewrite Module is officially provided by IIS development tool to extend the functionality of IIS web server. It provides additional functionality to rewrite application URL. This helps to make clean and SEO friendly URLs.

    You can visit below URL and download and install URL rewrite IIS extension:

    • http://www.iis.net/downloads/microsoft/url-rewrite

    You also need Application Request Routing extension to install on your system. Visit the following URL to download the extension and install on your system.

    • https://www.iis.net/downloads/microsoft/application-request-routing

    For more details, visit our other article here.

    Set Up Reverse Proxy Using IIS

    Let’s start with the configuration of the reverse proxy. For this tutorial, I have created a dummy web application running on port 3000 using node.js. You can see the below screenshot of the web application.

    Reverse proxy using IIS 1

    Now, open the IIS by typing “inetmgr” in run window. Select your website under sites in left side section. Now select “URL Rewrite” option.

    Reverse proxy using IIS 2

    Now click on “Add Rule(s)…” in actions section on the right side. See below screenshot for this link.

    Reverse proxy using IIS 3

    Now select Reverse Proxy under inbound and outbound section.

    Reverse proxy using IIS 4

    The above option will open a window, Add the server name or IP address with port under inbound rules input box. This is the URL from where reverse proxy will server data on clients request.

    Reverse proxy using IIS 5

    At this point, the reverse proxy setup has been done. Now access web site configured with IIS. You will see the backend application is accessible here. This is the reverse proxy in working.

    Reverse proxy using IIS 6

    This is the reverse proxy in working.

    iis proxy reverse proxy
    Share. Facebook Twitter Pinterest LinkedIn Tumblr Email WhatsApp

    Related Posts

    How To Set Up Nginx Reverse Proxy: A Step-By-Step Tutorial

    4 Methods to Check .NET Framework Version on Windows

    Generate the SSH Key Pair on Windows {5 Steps}

    View 4 Comments

    4 Comments

    1. chinthana on October 17, 2019 5:23 am

      Thank.it works well 🙂

      Reply
    2. Vin on April 26, 2019 8:53 pm

      Hi Maneesh
      Did you find any solution to the above? I also have similar requirement. If you have a solution can please share it with me.
      I want to do something similar on IIS. Following is for NGINX
      location /proxy/ {
      proxy_pass https://destinationserver:8089/;
      proxy_ssl_session_reuse off;
      }

      Reply
    3. maneesh on October 16, 2017 2:46 pm

      Hi,
      I have this proxy configuation for my website. How do I go about setting this up in IIS?
      const proxyConfig = [
      {
      context: ‘/web/api/webclient/**’,
      target: ‘https://xx.xxx.xxx.x6’,
      changeOrigin: true,
      secure: false
      },
      {
      context: ‘/rest/**’,
      target: ‘https://xx.xxx.xx.x9’,
      changeOrigin: true,
      secure: false
      },
      {
      context: ‘/api/**’,
      target: ‘http://xx.xxx.xxx.xx7’,
      changeOrigin: true,
      secure: false
      }
      ];

      Reply
    4. khemuchander on October 12, 2017 10:08 pm

      are mere bhaai , yeh to bohot hi basic funda hain … aur kuch advanced funde bataiye to maza aa jaaye

      Reply

    Leave A Reply Cancel Reply

    Advertisement
    Recent Posts
    • How to List Manually Installed Packages in Ubuntu & Debian
    • 10 Bash Tricks Every Developer Should Know
    • How to Validate Email Address in JavaScript
    • Firewalld: Common Firewall Rules and Commands
    • 12 Apk Commands in Alpine Linux Package Management
    Facebook Twitter Instagram Pinterest
    © 2023 Tecadmin.net. All Rights Reserved | Terms  | Privacy Policy

    Type above and press Enter to search. Press Esc to cancel.