IIS(管理者アクセス権がない)でデフォルトの「ASP.NETMVC 2 Webアプリケーション」を使用していますが、
「サーバー/ITEC」
サーバーがエラー(404エラー)を返さずに「server / ITEC/About」に移動することはできません。
テストにもRouteDebuggerを使用しています。デフォルトの「server/ITEC」を使用すると一致しますが(デフォルトのホーム/インデックスコントローラーアクション)、手動で「server / ITEC/About」と入力しても表示されません。 RouteDebuggerページ。また、「server / Itec / About」に「index.html」ファイルを配置すると、結果が返されます。これにより、ディレクトリは、リクエストを処理するときにMVCルーティングではなくファイルシステムを使用するように構成されていると思います。 -これは安全な仮定ですか?
デフォルト以外のコントローラー/アクションを返すことができるように、Global.asaxファイルを更新するにはどうすればよいですか?または、これはサーバーの問題ですか?それを修正するにはどうすればよいですか?
ありがとう!
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using System.Web.Routing;
namespace mikeProg
{
// Note: For instructions on enabling IIS6 or IIS7 classic mode,
// visit http://go.microsoft.com/?LinkId=9394801
public class MvcApplication : System.Web.HttpApplication
{
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
"Default", // Route name
"{controller}/{action}/{id}", // URL with parameters
new { controller = "Home", action = "Index", id = UrlParameter.Optional } // Parameter defaults
);
RouteDebug.RouteDebugger.RewriteRoutesForTesting(RouteTable.Routes);
}
protected void Application_Start()
{
AreaRegistration.RegisterAllAreas();
RegisterRoutes(RouteTable.Routes);
}
}
}