2012-02-06 98 views
1

我在运行IIS 6.0的Windows Server 2003,XP框上有这个奇怪的问题。我有一个使用应用程序池标识部署的WCF服务。我能够浏览SVC文件这样的那个盒子,为什么WCF服务在IIS 6.0上给出401错误

http://localhost/servicename.svc

但是当我做http://machinename/servicename.svc,它要求凭据。 该网站配置为匿名访问和集成Windows身份验证。

我真的不知道这里有什么问题,我有另外一台机器是这个盒子的故障转移位置,在IIS中完全相同的设置工作正常。

回答

0

确保应用程序池的标识已读取&对IIS托管的文件执行访问(换句话说,检查D:\ path \ to \ site中的文件)。无论是网络服务,域帐户,无论它..它需要R & X权限。

我在猜测发生的事情是你是服务器上的本地管理员,所以当你在本地执行操作时,你可以使用自己的本地凭据来提取网站。但是,当您远程执行此操作时,IIS必须能够访问这些文件 - 即使启用了匿名访问(否则,它如何加载文件以向您提供页面?)。

如果仍然遭到拒绝,请尝试使用类似的Filemon和procmon中的程序在服务器上的本地,同时发出请求,看看天色拒绝访问,当你得到一个401