如何在ASP.NET MVC中拥有一个文件扩展名会被请求筛选阻止的路由
本文关键字:请求 筛选 路由 扩展名 文件 ASP NET MVC 有一个 拥有 | 更新日期: 2023-09-27 18:20:01
我有一条基本上看起来像这样的路线:
Foo/{id}/Files/{*path}
我希望它匹配一个URL,例如:
http://mysite/Foo/Bar/Files/Baz.cs
但是,我收到一个HTTP 404.7错误,上面写着"请求筛选模块配置为拒绝文件扩展名。"我可以通过修改web.config从请求筛选中删除文件扩展名,但我不希望我的源代码可见。我应该如何设置?
让它工作的唯一方法是通过ASP.NET 4.0中的relatedUrlToFileSystemMapping设置。你可以在这里阅读更多:
- http://haacked.com/archive/2010/04/29/allowing-reserved-filenames-in-URLs.aspx
如果文件的路径与您想要的URL不匹配,您可以执行以下操作:
-
在web.config中将保存源文件的文件夹标记为拒绝所有人使用(例如/SourceCode-dir)
-
允许请求过滤模块中的.cs扩展