Ami*_*abh 7 asp.net iis-6 visual-studio-2010 asp.net-4.0
http://testsite
我们期望它呈现
http://testsite/Default.aspx
但相反,我们得到了404 Not found error.它部署在.Net 2.0上时没有遇到这个问题.只有在服务器上发生变化的是我们使用.NET 4而不是.NET 2.0.
更新:我尝试了以下链接,但它没有工作.
服务器上的框架版本是.NET 4 RC.如果我们在服务器上安装最新的.NET 4版本会有帮助吗?
更新:此问题现已解决.问题是我们使用的第三方上传控件,它在Web.Config中添加了自己的HttpHandler.这个HttpHandler在.NET 4中开始失败.
小智 28
使用新的.NET 4框架,如果在IIS 6 Windows Server上运行它,会出现一些问题.IIS 6不允许您在IIS7之类的同一实例中运行多个框架,可以创建针对不同框架的应用程序池.当IIS 6在ASP.NET 2.0(3.0和3.5是超集,而不是框架)下运行时,如果应用程序是4.0,则会遇到此错误配置错误说明:处理为此请求提供服务所需的配置文件时出错.请查看下面的具体错误详细信息并相应地修改配置文件.分析器错误消息:无法识别的属性'targetFramework'.请注意,属性名称区分大小写.
Source Error:
Line 11: </configSections>
Line 12: <system.web>
Line 13: <compilation debug="true" targetFramework="4.0">
Line 14: </compilation>
Line 15: <pages controlRenderingCompatibilityVersion="3.5" clientIDMode="AutoID"/> </ system.web>
Run Code Online (Sandbox Code Playgroud)
你有几个选择;
配置IIS6和Web配置以解决问题.我处理第二部分:
在IIS 6控制台中,您需要右键单击您的项目并单击该属性并检查ASP.Net选项卡是否选择了Framework 4.如果没有选择框架4.
但是由于应用程序池,您可能仍会面临同样的错误; 您可能拥有两个不同框架Web应用程序的相同应用程序池.IIS 6不允许您在同一实例中运行多个框架(意味着单个应用程序池不能用于两个不同的框架),例如可以创建针对不同框架的应用程序池的IIS7.
以前CompilerVersion值设置为v3.5,但我们已经将targetFranework更改为4.因此,根据上面的错误消息,如果要编译版本,则提供程序选项中的'compilerVersion'属性必须为'v4.0'或更高版本4.0或更高版本的.NET Framework.
Hence your new setting will be as below:
<providerOption name="CompilerVersion" value="v3.5"/>
Run Code Online (Sandbox Code Playgroud)
希望这将解决您在IIS6上的ASP.Net 4迁移和托管问题.
检查服务器日志,它们可能会让您更好地了解正在发生的情况。
您可以通过右键单击 IIS 中的网站并转到属性来找到日志文件的路径。然后转到“网站”选项卡,在“启用日志记录”下单击属性,将显示日志记录属性窗口,其中显示日志文件的路径。
| 归档时间: |
|
| 查看次数: |
48664 次 |
| 最近记录: |