Asp.net IIS忘记虚拟目录权限-加载配置文件时出错:无法开始监视更改
我有一个包含PDF的虚拟目录的网站。 用户通过使用URL访问PDF,例如,Asp.net IIS忘记虚拟目录权限-加载配置文件时出错:无法开始监视更改,asp.net,iis,web-deployment,Asp.net,Iis,Web Deployment,我有一个包含PDF的虚拟目录的网站。 用户通过使用URL访问PDF,例如,PDF是映射到\\\actualPhysicalServerName\PDFsDirectory\的虚拟目录。 这很有效 我经常重新部署应用程序。重新部署应用程序并重新启动网站后,在重新启动IIS之前,用户无法再访问虚拟目录 访问上述URL会出现以下错误: 加载配置文件时出错:无法开始监视对\\\actualPhysicalServerName\PDFsDirectory\web.config的更改,因为访问被拒绝 at
PDF
是映射到\\\actualPhysicalServerName\PDFsDirectory\
的虚拟目录。
这很有效
我经常重新部署应用程序。重新部署应用程序并重新启动网站后,在重新启动IIS之前,用户无法再访问虚拟目录
访问上述URL会出现以下错误:
加载配置文件时出错:无法开始监视对\\\actualPhysicalServerName\PDFsDirectory\web.config
的更改,因为访问被拒绝
at System.Web.FileChangesMonitor.FindDirectoryMonitor(String dir, Boolean addIfNotFound, Boolean throwOnError)
at System.Web.FileChangesMonitor.StartMonitoringFile(String alias, FileChangeEventHandler callback)
at System.Web.Configuration.WebConfigurationHost.StartMonitoringStreamForChanges(String streamName, StreamChangeCallback callback)
at System.Configuration.BaseConfigurationRecord.MonitorStream(String configKey, String configSource, String streamname)
at System.Configuration.BaseConfigurationRecord.InitConfigFromFile()
重新启动应用程序池没有帮助。
我必须重新启动IIS。
重新启动IIS后,可以按预期访问虚拟目录
这是预期的行为吗?我是否错误地设置了虚拟目录
我使用的是IIS 7.5、Windows 7 server和.NET 4.5。对于其他对同一问题感到沮丧的人-虽然我没有找到问题的症结所在,但我确实发现这个问题与网站运行的应用程序池的标识有关 在我的例子中,解决方案是将应用程序池标识从ApplicationPoolIdentity内置帐户更改为所有相关机器上的管理员自定义帐户 这样做
- 右键单击IIS中的应用程序池,选择高级属性李>
- 在ProcessModel->Identity下,选择Identity。选择自定义帐户(内置帐户、应用程序池标识是IIS 7.5中的默认设置)
- 切换到使用自定义域
- 重新启动应用程序池
我这样解决了这个问题:
我有一个虚拟目录指向UNC共享上的图像。在我们将父应用程序更新到.NET4.5之前,一切都很正常
我们必须将VirDir转换为具有4.0集成应用程序池的虚拟应用程序。旧主题,但我能够通过以下方式解决它(基本上是将ASPNET和IUSR添加到权限中:
我想知道为什么这个“停止”工作,直到我看到键“将父应用程序更新到.NET 4.5”。对于我来说,如果删除web.config行: