相关疑难解决方法(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万
查看次数

在每个网址的末尾添加一个尾部斜杠?

我这里有点问题.我需要在我正在处理的网站的每个网址末尾添加一个尾部斜杠.我将网站内的所有链接定义为具有如下的尾部斜杠:

<a href="/register/">Register</a>
Run Code Online (Sandbox Code Playgroud)

虽然这很好用,但还有一个小问题:它来自调用RedirectToAction()的生成的url.例如:

return RedirectToAction("Register", "Users");
Run Code Online (Sandbox Code Playgroud)

将导致url更改为/ register,没有尾部斜杠.我修改了我的路由系统:

  routes.MapRoute("register",
                        "register/",
                        new {controller = "Users", action = "Register"}
            );
Run Code Online (Sandbox Code Playgroud)

仍然不会自动添加所需的尾部斜杠!
我查了这个问题和这个问题,但这些完全不同,因为我没有使用任何url重写库,我只是使用asp.net mvc路由系统.
那么你们怎么说呢?

asp.net-mvc url-routing

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

标签 统计

asp.net-mvc ×2

iis ×1

iis-7 ×1

iis-8 ×1

iis-express ×1

url-routing ×1