![](/img/trans.png)
[英]MVC Application is working fine in IIS Express but not working in Local IIS web server
[英]UrlMapping giving 404 Page not found on IIS but working fine on local server port
当我将.NET 2.0网站放在IIS 6上时,我遇到了问题。我使用UrlMapping重定向了一些旧的url。 当我在VS本地服务器端口上使用它时,它工作正常,但是当我将其部署到IIS 6时,它给出了404 Page not found错误。
我发现在一些论坛中他们正在谈论使用通配符映射,但是没有一个为我提供了如何实现此目标的很好的解释。 除此之外,在IIS级别上进行此类修改有什么安全风险(如果有的话)?
在此先感谢,干杯:)
在目标服务器上破解IIS 。
转到您的Web应用程序 ,右键单击并选择“ 属性”。
选择虚拟目录选项卡
单击应用程序设置下的配置按钮
在“ 通配符应用程序映射”部分中,添加以下内容:
c:\windows\microsoft.net\framework\v2.0.50727\aspnet_isapi.dll
确保您未选中的文件存在。
可能导致您的问题的原因是,在IIS上的ASP.NET映射中,有一个复选框“检查文件是否存在”,取消选中该复选框,您就可以了。
编辑此文档没有真正的风险。
http://forums.asp.net/p/890825/1017645.aspx
http://blog.codeville.net/2008/07/04/options-for-deploying-aspnet-mvc-to-iis-6/
打开网站上的属性,转到“主目录”选项卡,然后单击“配置”。
然后在其中找到.NET映射,或创建通配符映射...,并确保未选中“检查文件存在”选项。
我相信这是因为您的URL没有扩展名(例如,.aspx)时,IIS6无法将请求切换到ASP.NET。 在以下示例设置中
<add url="~/NewUrl" mappedUrl="~/Default.aspx?UrlId=12345" />
当您尝试在IIS6上访问http://yousite.name/NewUrl时,您会得到404。 这是Phil Haack博客中有关如何使用通配符映射克服此问题的文章: http : //haacked.com/archive/2008/11/26/asp.net-mvc-on-iis-6-walkthrough.aspx
PS我知道,该帖子是有关ASP.NET MVC的,但我认为它也可能对您的情况有所帮助。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.