【问题标题】:ASP.NET error on IIS serverIIS 服务器上的 ASP.NET 错误
【发布时间】:2012-11-06 18:26:52
【问题描述】:

通过使用带有框架 4.5 的 VS Express for Web 2012 测试我的 asp.net 网站的本地主机,在我的工作站上一切正常。我使用远程桌面连接将我的 ASP.NET 文件移动到 IIS Windows Server 2008 R2,然后我在本地主机上对其进行测试,它工作正常。当我准备上传到 IIS 以使用 ASP.NET Framwork 版本 4.0 的应用程序池测试网站时,网站上出现配置错误,说 allowDefinition='MachineToApplication',

</controls>
</pages>
<authentication mode="Forms">
<forms loginUrl="~/Account/Login.aspx" timeout="2880" />
</authentication> 

它来自 Web.Config 文件。

我不知道为什么会出错,是因为我从工作站移动文件还是因为我的 4.5 框架与 IIS 4.0 框架不匹配。如果 IIS 需要升级,那么如何或者可以从 web.config 轻松修改?我不想将我的 4.5 更改为 4.0,因为它会搞砸编码并使情况变得更糟。

【问题讨论】:

  • 请向我们提供有关错误的更多信息。 (错误描述、错误代码等)
  • 解析器错误消息:在应用程序级别之外使用注册为 allowDefinition='MachineToApplication' 的部分是错误的。此错误可能是由于虚拟目录未在 IIS 中配置为应用程序所致。

标签: asp.net iis


【解决方案1】:

正如错误所说,您需要将虚拟目录转换为应用程序。

如果您使用的是 IIS 7.0 及更高版本,请按照以下步骤操作:

  1. 打开 IIS 管理器
  2. 找到您的网站根目录(可能您的网站托管在默认网站中)
  3. 打开上下文菜单并选择转换为应用程序。

如果有帮助,请告诉我。

【讨论】:

  • 使用 deafualtapppool(ASP.NET v2.0) 完成此操作,然后出现新错误,显示解析器错误消息:无法识别的属性“targetFramework”。请注意,属性名称区分大小写。源错误:第 22 行:--> 第 23 行: 第 24 行: 第 25 行: 第 26 行:
  • 似乎 IIS 功能支持 .NET Framework 3.5.1 还是因为应用程序池支持 v2.0?
  • 您在 web.config 文件中指定了 targetFramework="4.5",但应用程序池指定了不同的版本。检查应用程序池的 .Net 框架版本。它必须是 4.0。如果仍然失败,则需要注册。
  • 注册 .net framework 4.0 你需要 regiis.exe。更多详情请查看此链接msdn.microsoft.com/en-us/library/k6h9cz8h(v=vs.100).aspx
  • 好的,我从 defaultAppPool(v2.0) 更改为 ASP.NET v4.0。网站上出现新错误,用户“IIS APPPOOL\ASP.NET v4.0”登录失败。异常详细信息:System.Data.SqlClient.SqlException:用户“IIS APPPOOL\ASP.NET v4.0”登录失败。
猜你喜欢
  • 2011-01-09
  • 2012-10-27
  • 2016-09-09
  • 2017-08-07
  • 2017-05-17
  • 2018-04-05
  • 1970-01-01
  • 2020-07-27
  • 1970-01-01
相关资源
最近更新 更多