IIS Web.config 301 Redirect in ASP.NET including Parameter

I'm looking into using 301 redirects having noticed a bunch of hits on my domain on Google Analytics to .asp pages which not longer exist having moved everything over to a .NET setup.

Having spent a bit of time Googling, I have been able to add the following code to my web.config.

<location path="products.aspx">
    <system.webServer>
     <httpRedirect enabled="true" destination="https://www.mindstick.com/products.aspx" httpResponseStatus="Permanent" />
    </system.webServer>
</location>

This is fine and moves everything from products.asp to pproducts.aspx but it does not preserve the querystring, which is essential to make any sense, ie products.aspx?id=789 

Last updated:11/11/2014 1:53:42 AM

1 Answers

Anonymous User
Anonymous User

You have to add $Q to the destination url to preserve the querystring. So in your case it should look like this:

<location path='products.asp'>
    <system.webServer>
     <httpRedirect enabled='true' destination='https://www.mindstick.com/products.aspx$Q' httpResponseStatus='Permanent' />
    </system.webServer>
</location> 

Answer