我正在为我们的 Web 服务器场设置一个新模板,它将在本地而不是从 UNC 路径托管 Web 应用程序。应用程序中有几个文件夹写入数据,这些文件夹需要在场中的所有服务器之间共享。
为了在不重写应用程序部分的情况下做到这一点,我试图在网站配置中创建指向 UNC 路径的虚拟目录。这些虚拟目录不包含任何代码,它们只是文本文件、图像等,只需要通过StaticFileHandler
.500.19 exception
住在那个目录中。我没有将 VDIR 设置为应用程序,只是一个简单的指针,身份验证作为对 UNC 路径具有读取权限的域用户运行。
我尝试运行 CASPol 命令以授予对 UNC 路径的完全信任,以及为域用户运行 aspnet_regiis -ga 命令。
在 IIS 6 中,您可以打开 VDIR 的属性并将执行权限设置为Scripts only
没有 VDIR 上的应用程序,并且 VDIR 本身不需要 a web.config
。我查看过的关于在 IIS8.5 中设置 VDIR 的所有文档和视频都说,如果需要与应用程序池和站点运行的不同的东西,则在创建 VDIR 然后设置身份验证时没有额外的设置。
配置:
服务器:Windows 2012R2 标准
IIS:8.5
ASP.Net:4.0
应用程序池:集成模式
连接为:应用程序池、网站和 VDIR 的域用户
web.config
当 VDIR 未设置为应用程序时,是否有全局设置禁用对 VDIR 中文件的要求/检查?
我发现,当我为虚拟目录设置身份验证时,我使用域用户设置它们,因为
Physical Path Credentials
我设置了导致错误的Physical Path Credentials Logon Type
值。当我将类型设置为任何其他选项时,它加载的内容就好了。我不确定为什么选项会失败,除非它与返回无效令牌有关。Network
ACCESS DENIED
Network
Kerberos
MSDN 中的登录类型