Set default webpage for website on Microsoft Windows Azure

I recently set up a website on azurewebsites.net.

But when I go to the url http:/website.azurewebsites.net/
it doesn’t load.

But when I go to http:/website.azurewebsites.net/home.aspx it loads.

What I want is that
if a user goes to http:/website.azurewebsites.net/ it loads with the home.aspx content or get redirected to http:/website.azurewebsites.net/home.aspx

This doesn’t work

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

Sorry here’s the actual link http://rathgarfantasyhockey.azurewebsites.net/default.aspx which works fine, but when you go to http://rathgarfantasyhockey.azurewebsites.net HTTP error 404, The resource cannot be found is displayed.

Can anyone help??

Answers:

Thank you for visiting the Q&A section on Magenaut. Please note that all the answers may not help you solve the issue immediately. So please treat them as advisements. If you found the post helpful (or not), leave a comment & I’ll get back to you as soon as possible.

Method 1

According to this blog post: http://blogs.msdn.com/b/cesardelatorre/archive/2010/07/22/how-to-set-a-default-page-to-a-windows-azure-web-role-app-silverlight-asp-net-etc.aspx

<defaultDocument> 
          <files>                           
             <clear/>                           
             <add value="Default.aspx"/>                      
          </files>
</defaultDocument>

Should Work. Or you could Type to Url map it. To do that check out http://msdn.microsoft.com/en-us/library/cc668201.aspx

Method 2

If you are using MVC or Web API, add the following line in RegisterRoutes():

   routes.IgnoreRoute("");

This solved my problem. Hope it helps you.

Method 3

If you app is a MVC application, it looks for the default controller instead of default pages.

So you must map a route in RouteConfig. In my case,I wanted to load the site with an index.html page, so I did:

RouteConfig.cs file:

 public static void RegisterRoutes(RouteCollection routes)
    {
        routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

        routes.MapRoute(
            name: "Default",
            url: "{controller}/{action}/{id}",
            defaults: new { controller = "Home", action = "Index", id =    UrlParameter.Optional }
        );
    }

And in my HomeController, Index Action, write this code:
public ActionResult Index()
    {
        return Redirect("/index.html");
    }

This works fine in Azure with a Shared Site. I hope this will help you.

Method 4

Do you have a typo?

You have:

<add value="Default.aspx" />

But you said that your “home page” that works is /home.aspx.

If you want for /home.aspx to be displayed when the user goes to http:/website.azurewebsites.net/, then I can think of several ways for you to accomplish that.

Since you have Default.aspx as your defaultDocument, you can rename home.aspx to Default.aspx and when someone goes to http:/website.azurewebsites.net/ the contents of Default.aspx will be displayed.

If you need to keep home.aspx named as home.aspx for some reason, then as you requested if you want for http:/website.azurewebsites.net/ to redirect to /home.aspx then create a file called Default.aspx in the root directory and edit it to contain Response.Redirect("home.aspx", false);. A complete example for this type of page is available at http://msdn.microsoft.com/en-us/library/a8wa7sdt(v=vs.80).aspx.

Update:

Try adding enabled="true" to your defaultDocument XML tag. See the example below from http://www.iis.net/ConfigReference/system.webServer/defaultDocument

 <system.webServer>
      <defaultDocument enabled="true">
         <files>
            <add value="home.html" />
         </files>
      </defaultDocument>
  </system.webServer>


All methods was sourced from stackoverflow.com or stackexchange.com, is licensed under cc by-sa 2.5, cc by-sa 3.0 and cc by-sa 4.0

0 0 votes
Article Rating
Subscribe
Notify of
guest

0 Comments
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x