Monday, May 9, 2016

IIS 8.5 - set custom server header, redirect to HTTPS and set HSTS


Example how to achive this with rewrite rules


         <rewrite>
            <rules>
                <rule name="Server Header">
                    <match url=".*" />
                    <serverVariables>
                        <set name="RESPONSE_Server" value="whateveryouwant" />
                    </serverVariables>
                    <action type="None" />
                </rule>
                <rule name="Redirect to HTTPS" stopProcessing="true">
                    <match url="(.*)" />
                    <conditions>
                        <add input="{HTTPS}" pattern="^OFF$" />
                    </conditions>
                    <action type="Redirect" url="https://your-web-page/{R:1}" />
                </rule>
                <rule name="Strict-Transport-Security" enabled="true">
                    <match url=".*" />
                    <conditions>
                        <add input="{HTTPS}" pattern="on" />
                    </conditions>
                    <serverVariables>
                        <set name="RESPONSE_Strict_Transport_Security" value="max-age=31536000" />
                    </serverVariables>
                    <action type="None" />
                </rule>
             
            </rules>
        </rewrite>