web-dev-qa-db-ja.com

デフォルトページasp.netを設定する方法

サーバーでサイトを公開したばかりですが、ブラウザにwww.mysite.comと入力すると、次のエラーが表示されます:HTTPエラー403.14-禁止Webサーバーはこのディレクトリのコンテンツを一覧表示しないように構成されています。 www.mysite.com/Home.aspxと入力すると、正しくロードされます。だから、どのようにデフォルトページを設定できますか?私はすでにweb.configにこれを持っています:

<system.webServer>
   <defaultDocument>
     <files>
       <add value="Pages/Home.aspx" />
     </files>
   </defaultDocument>
  </system.webServer>
31
Norman

ASP.NET WebForms

web.configファイル、これを試してからclearタグを使用してください:

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

こちらをご覧ください: http://www.iis.net/configreference/system.webserver/defaultdocument

ASP.NET MVC/ASP.NET CORE

使用しているasp.net mvcのバージョンに応じて、別のファイル(~/Global.asax.cs v3以前または~/App_Start/RouteConfig.cs v4以降)。どちらの場合でも、asp.net mvcはWebフォームのようなファイルの代わりにルートを使用するため、ルートが登録されていることがわかります。そのため、デフォルト値を変更できます。

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

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

ASP.NET COREでも同様です。

こちらをご覧ください: http://www.codeproject.com/Articles/624181/Routing-Basics-in-ASP-NET-MVC

67
Felipe Oriani

Felipeの答えに加えて、IISからこれを行うこともできます。

Admin Toolsを選択します-> IIS Manager->リストからWebサイトを選択します。右側の[Default Document]をクリックし、[Add]をクリックします。矢印を使用して、エントリをリストの一番上に移動します。できました。

ただし、これはサイトを公開するたびに上書きされます。

4
Icarus