我有一个项目,要求我的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项目,但我不认为这是相关的.我的路由工作正常,我期望的参数在那里,直到它们包含一个点.
我需要配置什么才能在网址中加点?
我这里有点问题.我需要在我正在处理的网站的每个网址末尾添加一个尾部斜杠.我将网站内的所有链接定义为具有如下的尾部斜杠:
<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路由系统.
那么你们怎么说呢?