Preparations

In this guide, we will learn how to set up Windows IIS as the reverse proxy server which redirects requests to the PowerServer Web APIs running on the Kestrel server. This is also known as the IIS out-of-process hosting which runs the PowerServer Web APIs in a process separate from the IIS worker process and forwards the requests made to the IIS reverse proxy to the Kestrel server.

In this guide, we will configure and use the following server environment and URLs. Make sure the port number is not occupied by any other program. For how to verify if a port number is occupied, follow the instructions in Choosing an appropriate port number.


Step 1: Set up the reverse proxy server with the following OS and software (install the software in the order listed).

  • Windows Server 2019 (64-bit)

  • IIS

    The section Installing Web Server (IIS) has detailed installation instructions.

  • IIS URL Rewrite

    Download and install the URL Rewrite extension.

    URL Rewrite must be installed prior to ARR, as ARR depends on URL Rewrite.

  • IIS Application Request Routing (ARR)

    Download and install the Application Request Routing extension.

    After installation, you should be able to see the Application Request Routine Cache and URL Rewrite features in the IIS manager.


Step 2: Make sure the server can connect to the NuGet site: https://www.nuget.org (for installing PowerServer NuGet packages) and the Appeon license server (for validating the PowerServer license).

Step 3: Configure Windows Defender Firewall on the server to allow the port number (80 and 8080 in this guide or any port number you choose). The section "Configuring Windows Defender Firewall" has detailed instructions.