相关疑难解决方法(0)

URL中的点导致404使用ASP.NET mvc和IIS

我有一个项目,要求我的URL在路径中有点.例如,我可能有一个URL,例如www.example.com/people/michael.phelps

带点的网址生成404.我的路由很好.如果我通过michaelphelps,没有圆点,那么一切正常.如果我添加点我得到404错误.示例站点在带有IIS8 Express的Windows 7上运行.URLScan未运行.

我尝试将以下内容添加到我的web.config中:

<security>
  <requestFiltering allowDoubleEscaping="true"/>
</security>
Run Code Online (Sandbox Code Playgroud)

不幸的是,没有什么区别.我刚收到404.0 Not Found错误.

这是一个MVC4项目,但我不认为这是相关的.我的路由工作正常,我期望的参数在那里,直到它们包含一个点.

我需要配置什么才能在网址中加点?

iis asp.net-mvc iis-7 iis-express iis-8

298
推荐指数
7
解决办法
9万
查看次数

ASP.NET MVC Url Route支持(点)

我希望你能帮我解决下面的问题.

我在IIS7上使用ASP.NET MVC 3,并希望我的应用程序支持带点的用户名.

示例:http://localhost/john.lee

这就是我的Global.asax的样子:(http:// localhost / {username})

routes.MapRoute(
    "UserList",
    "{username}",
    new { controller = "Home", action = "ListAll" }
);
Run Code Online (Sandbox Code Playgroud)

当我访问其他页面时,应用程序工作,例如http://localhost/john.lee/details等.

但主用户页面不起作用,我希望该应用程序像支持http://www.facebook.com/john.lee的 Facebook一样工作.

我使用下面的代码,它根本不适合我:

<httpRuntime relaxedUrlToFileSystemMapping="true" />
Run Code Online (Sandbox Code Playgroud)

我能够使用下面的代码并让应用程序接受点,但我绝对不希望使用下面的代码有很多不同的原因,请告诉我有一种方法来克服这个问题.

<modules runAllManagedModulesForAllRequests="false" />
Run Code Online (Sandbox Code Playgroud)

asp.net iis-7 url-routing global-asax asp.net-mvc-3

36
推荐指数
2
解决办法
2万
查看次数