Updated IIS ARR Reverse Proxy (markdown)

Mike Tzou 2017-10-13 00:04:46 +08:00
parent 16da40d2db
commit d0b1a6e494

@ -1,19 +1,19 @@
For users that run qBittorrent via Microsoft IIS as a reverse proxy an extra header is needed. You must install the [URL Rewrite](https://www.iis.net/downloads/microsoft/url-rewrite) addon first. Reverse proxy support will be enabled when creating the first rule. For users that run qBittorrent via Microsoft IIS as a reverse proxy an extra header is needed. You must install the [URL Rewrite](https://www.iis.net/downloads/microsoft/url-rewrite) addon first. Reverse proxy support will be enabled when creating the first rule.
1. On the URL Rewrite Page open **View Server Variables** on the right side 1. On the URL Rewrite Page open **View Server Variables** on the right side
1. Click **Add** and in the box that appears enter **HTTP_X-Forwarded-Host** 2. Click **Add** and in the box that appears enter `HTTP_X-Forwarded-Host`
1. Return to the rules page 3. Return to the rules page
1. Open **Add Rules** and select **Reverse Proxy** 4. Open **Add Rules** and select **Reverse Proxy**
1. Enter the server IP:Port without http:// (for example 127.0.0.1:8080) 5. Enter the server IP:Port without `http://` (for example `127.0.0.1:8080`)
1. Open the new rule and change the path to a subdirectory if needed (for example **qbweb/(.*)** = http://domain.tld/qbweb/) 6. Open the new rule and change the path to a subdirectory if needed (for example **qbweb/(.*)** = http://domain.tld/qbweb/)
1. Under **Server Variables** add a rule with the following: 7. Under **Server Variables** add a rule with the following:
Server variable name: **HTTP_X-Forwarded-Host** Server variable name: **HTTP_X-Forwarded-Host**
Value: **{HTTP_HOST}:{SERVER_PORT}** Value: `{HTTP_HOST}:{SERVER_PORT}`
The code is automatically created in the web.config file and looks like this (you must use the GUI first so reverse proxy support is enabled): The code is automatically created in the web.config file and looks like this (you must use the GUI first so reverse proxy support is enabled):
```xml
<rule name="Qbittorrent" stopProcessing="true"> <rule name="Qbittorrent" stopProcessing="true">
<match url="qbweb/(.*)" /> <match url="qbweb/(.*)" />
<action type="Rewrite" url="http://127.0.0.1:8080/{R:1}" /> <action type="Rewrite" url="http://127.0.0.1:8080/{R:1}" />
@ -21,7 +21,8 @@ The code is automatically created in the web.config file and looks like this (yo
<set name="HTTP_X-Forwarded-Host" value="{HTTP_HOST}:{SERVER_PORT}" /> <set name="HTTP_X-Forwarded-Host" value="{HTTP_HOST}:{SERVER_PORT}" />
</serverVariables> </serverVariables>
</rule> </rule>
```
You can use HTTPS to access the URL via IIS and it will use HTTP to communicate with qBittorrent. There is no need for HTTPS on localhost. You can use HTTPS to access the URL via IIS and it will use HTTP to communicate with qBittorrent. There is no need for HTTPS on localhost.
The tutorial is based on the assistance of Chocobo1 in [this thread](https://github.com/qbittorrent/qBittorrent/issues/7311). A temp exe is provided in that thread for 3.3.15 for a bug that will hopefully be fixed in the next version. The tutorial is based on the assistance of Chocobo1 in [this thread](https://github.com/qbittorrent/qBittorrent/issues/7311).