IIS 401.3 - 在为网络负载平衡设置的 3 台服务器上,只有 1 台服务器未获得授权

IIS 401.3 - 在为网络负载平衡设置的 3 台服务器上,只有 1 台服务器未获得授权

周末,我们的服务器管理员设置了两台安装了 IIS 的虚拟 Windows 2008 计算机,并在 NLB 下进行设置。我进来将网站运行的应用程序池更改为我们的域帐户,该帐户对数据库和托管 .NET Web 应用程序 Sitefinity 的文件共享具有适当的访问权限,并将其更改为 .NET 4 Integrated。NLB 和两台服务器上的一切都运行良好。他在周二为我们的集群启动了第三台服务器,我执行了相同的操作。唯一的区别是我被授予了第三台服务器的管理员权限,因此我可以远程设置它,而不必去他的办公室。

他完全控制共享和 NTFS 权限,\\hostname\Sitefinity而我相信我只有读取权限。我将网站指向\\hostname\Sitefinity\sitename其他人所在的相同共享,并且身份验证/授权测试设置已通过。我从访问该网站http://localhost (就像我在尝试集群的 IP 地址之前从其他两个网站成功访问一样),然后收到 HTTP 错误 401.3 - 未授权。我已多次验证应用程序池是否在同一个服务帐户下运行。

我尝试只访问一个简单的 test.htm。前两台服务器上都运行良好,但在第三台服务器上却出现同样的 401.3。我将我的开发项目复制到本地 inetpub 目录并重新指向网站,运行完美。

我打开了失败请求跟踪,但它的行为好像仍在运行本地 IUSR 帐户(而不是我的域帐户)?以下是文件缓存访问启动和跟踪中的错误的摘录:

FileName
\\hostname\sitefinity\sitename\test.htm 
 UserName
IUSR 
 DomainName
NT AUTHORITY 

----------

Successful
false 

 FileFromCache
false 

 FileAddedToCache
false 

 FileDirmoned
true 

 LastModCheckErrorIgnored
true 

 ErrorCode
2147942405 

 LastModifiedTime

 ErrorCode

Access is denied. (0x80070005)

----------

ModuleName
IIS Web Core 

 Notification
2 

 HttpStatus
401 

 HttpReason
Unauthorized 

 HttpSubStatus
3 

 ErrorCode
2147942405 

 ConfigExceptionInfo

 Notification

AUTHENTICATE_REQUEST

ErrorCode

Access is denied. (0x80070005)

----------

然后,我的个人 AD 帐户被授予对共享的读/写权限,因此我创建了一个新的应用程序池并在其下设置站点,以防应用程序池出现问题但没有成功。

我在自己的帐户下创建了另一个,但仍然失败。似乎它并没有尝试访问我的应用程序池正在运行的帐户下的文件,尽管这是我以前做过的唯一方法。我在网站的高级设置中将物理路径凭据设置为服务帐户,它抛出了某种 500 错误,所以我认为这不是答案(而且我不必在其他服务器上这样做)。这就像我试图以某种方式强制模拟 IUSR 帐户之类的东西?

答案1

哇,我觉得自己有点愚蠢。我注意到工作服务器上有额外的 .net 4 应用程序池,但第一次没有用 Google 仔细搜索: http://msdn.microsoft.com/en-us/library/ie/k6h9cz8h.aspx

C:\Windows\Microsoft.NET\Framework64\v4.0.30319>aspnet_regiis -i

就是这样了。。我要为自己辩解,它抛出的错误对我来说似乎完全没有根据!:)

相关内容