Search code examples
asp.netiis-7web-config

How to set the Default Page in ASP.NET?


Is there any section or code which allows us to set default page in web.config?

For example, when people first visit my website, I want them to see CreateThing.aspx rather than Default.aspx.

The solutions I already know:

  1. Put this line of code => Response.Redirect("CreateThings.aspx") in Default.aspx Page_Load event but this method is really naive.

  2. We can use IIS (default page configuration,) but I wanna do the same thing over on my ASP.NET application.

  3. This could be another solution for now:

    <defaultDocument>
        <files>
            <clear />
            <add value="Default.aspx" />
            <add value="Default.htm" />
            <add value="Default.asp" />
            <add value="index.htm" />
            <add value="index.html" />
            <add value="iisstart.htm" />
        </files>
    </defaultDocument>
    

Solution

  • If using IIS 7 or IIS 7.5 you can use

    <system.webServer>
        <defaultDocument>
            <files>
                <clear />
                <add value="CreateThing.aspx" />
            </files>
        </defaultDocument>
    </system.webServer>
    

    https://learn.microsoft.com/en-us/iis/configuration/system.webServer/defaultDocument/