Asp.net mvc 3 MVC3项目不会在IIS6.0上执行url中包含句点的页面

Asp.net mvc 3 MVC3项目不会在IIS6.0上执行url中包含句点的页面,asp.net-mvc-3,iis-6,mime-types,Asp.net Mvc 3,Iis 6,Mime Types,当我上传到我们的测试服务器时,我的站点出现了404错误。我发现问题在于url格式 http://servername/Wizard/Review/B00557.0001如果我手动将十进制编码为%46,它会工作。我猜IIS6.0试图将B00557.0001解释为一个文件 我在日志文件中得到了这个错误代码 2011-11-01 12:53:01 W3SVC259463726 10.90.10.11 GET/Wizard/Review/B00557.0001-80-10.90.10.32 Mozill

当我上传到我们的测试服务器时,我的站点出现了404错误。我发现问题在于url格式

http://servername/Wizard/Review/B00557.0001
如果我手动将十进制编码为
%46
,它会工作。我猜IIS6.0试图将B00557.0001解释为一个文件

我在日志文件中得到了这个错误代码

2011-11-01 12:53:01 W3SVC259463726 10.90.10.11 GET/Wizard/Review/B00557.0001-80-10.90.10.32 Mozilla/4.0+(兼容;+MSIE+8.0;+Windows+NT+6.1;+Trident/4.0;+SLCC2;+NET+CLR+2.0.50727;+.NET+CLR+3.5.30729;+.NET+CLR+3.0.30729;+3.0.0.30729;+6.0;+InfoPath.2;+NET4+4+RTC4;+4+RTC;<0>


是否有一个服务器设置可以在不修改应用程序代码的情况下更改以解决此问题?

@consuellorben在大多数情况下都是正确的。必须取消选中“验证文件存在”。因为url实际上并不表示物理文件


您是否在IIS6中配置了通配符映射?我想是的,但检查一下也没什么坏处。你说了些什么之后我就检查了。应该映射什么文件?目前我有
C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\aspnet\u isapi.dll
,但它仍然不工作。这是适用于.NET 4的正确文件,因此没有解决问题。我认为问题在于IIS6将
.0001
视为一个扩展,它没有映射。如果在末尾添加一个slug,例如,
http://servername/Wizard/Review/B00557.0001/some-text-here
?哦!我总是忘了提那件事。对我来说,取消勾选这个框是根深蒂固的,它几乎是巴甫洛夫式的。