&引用;“找不到资源”;在IIS托管的asp.net web应用程序中打开页面时

&引用;“找不到资源”;在IIS托管的asp.net web应用程序中打开页面时,asp.net,iis,Asp.net,Iis,我正在使用IIS 8.5将web应用程序(.Net 4.5)托管到远程服务器。应用程序在本地和远程IIS上运行良好,但是有一个页面“/Reports/ReportsMain.aspx”导致错误“找不到资源”。我确保该页面存在。 我还确保应用程序池的.Net版本设置为4.0。但是我注意到以下几点: 1-当我第一次远程访问此页面时,我看到一个浏览器“登录”弹出,尽管这里根本不应该有身份验证 2-错误页面底部显示“版本信息:Microsoft.NET Framework版本:2.0,ASP.NET版本

我正在使用IIS 8.5将web应用程序(.Net 4.5)托管到远程服务器。应用程序在本地和远程IIS上运行良好,但是有一个页面“/Reports/ReportsMain.aspx”导致错误“找不到资源”。我确保该页面存在。 我还确保应用程序池的.Net版本设置为4.0。但是我注意到以下几点:

1-当我第一次远程访问此页面时,我看到一个浏览器“登录”弹出,尽管这里根本不应该有身份验证

2-错误页面底部显示“版本信息:Microsoft.NET Framework版本:2.0,ASP.NET版本:2.0”,尽管我已将应用程序池设置为4.0

有什么问题吗

有几件事要尝试

  • 确保IIS中没有捕获请求的重复站点
  • 重新启动IIS从来都不是一个坏选择
  • 将web.config本身设置为目标framework 4.0而不是2.0
通常,当这种情况发生时,它在本地工作正常,但在部署时却无法正常工作,它总是被证明是第三项,即web.config配置不匹配。希望这有帮助

我有这个问题

另一个解决方案是更改应用程序池设置:


转到与应用程序相关的应用程序池。单击高级设置。更改“启用32位应用程序”

我刚刚遇到了这个响应,结果发现它是由动作中的
StackOverflowException
引起的,该动作可能无法找到。通过使用VisualStudio调试器连接到IIS,我可以看到这一点。如图所示。我正在写一篇帖子。

正如Seany84在他们的评论中所解释的那样,如果你已经从2.0迁移到4.0,很可能你的网络配置包含一些与新版本不兼容的标签。在我的例子中,有一个“应用程序设置”部分导致了这个问题。从webconfig中删除此标记后,我的WebServices开始正常运行。

当您

找不到资源


服务器上出现错误,但它在本地工作正常-这可能是由于服务器磁盘空间不足造成的。导航到服务器并检查目录结构以查看文件是否存在。还要查看日志消息以了解更多详细信息。

wwwroot上的文件夹权限

使用(读取和执行,读取,添加IUSR

添加(计算机名称)\IIS\U IUSRS读取和执行读取


如果IIS没有访问该文件的权限,您将被阻止

我遇到了此问题,我将按照以下方法修复它,
确保web配置中没有任何错误, 用于查找错误转到 IIS>您的应用程序>管理应用程序>浏览 将在internet explorer中打开一个页面,
您将在此处找到错误,修复它并重新启动应用程序。它将正常工作。

我可以通过将IIS站点绑定“主机名”保留为空来解决我的问题


我已经尝试了所有的答案,它们都很有用。但在我的情况下,在更改这些设置后重新启动我的机器(不仅仅是IIS)。为我工作

还要确保你的这让我发疯。在升级项目的库之后,经过几年的无更新。一切正常,但我注意到ASMXWeb服务返回404。我检查了Web.config中的所有内容以及与ASMX相关的任何内容。最终在我的本地机器上重新启动了IIS,它成功了。