【问题标题】:Error 503 with WCF serviceWCF 服务出现错误 503
【发布时间】:2012-02-03 11:38:17
【问题描述】:

我有一个在端口 80 上侦听的自托管 WCF 服务。当我尝试连接到它时,我得到一个 503 Service Unavailable

我的 WCF 进程正在运行,IIS 正在运行。我的 URL ACL 是正确的。控制永远不会到达我的 WCF 进程。

WCF 跟踪仅显示:

Listen at 'http://localhost/Foo/Bar/'.

Failed Request Tracing 中未显示任何内容,该功能已正确打开 -- 出现其他跟踪。 503 Service Unavailable 消息非常明确,暗示它来自内核模式,而不是用户模式。

我有turned on HTTP.SYS tracing,说明命名空间保留正确:

Attempted to add URL (http://localhost:80/Foo/Bar/) to URL
group (0xFD0000014000002E). Status: 0x0.

但后来,在同一个踪迹中,我看到了:

Request (request ID 0xF600000580000006) rejected
due to reason: UrlGroupLookupFailed.

我已经尝试了几次iisreset,但没有帮助。我也重启了电脑;同样的问题。

出了什么问题?我还能做些什么来进一步调试这个问题?

更新

如果我重命名 URL(例如,将“Foo”更改为“Fizz”),那么它可以工作。看起来某处的配置已损坏。

我在同一进程中托管了绑定到https://localhost/Foo/Bar/ 的其他服务,它们似乎工作正常。

不只是 WCF

我在使用自托管 Nancy 服务时遇到了同样的问题,下面的一位评论者报告了自托管 ServiceStack 的相同问题服务。

【问题讨论】:

  • 你能发布你的 WCF 服务配置吗?您还可以在服务运行后从 IE 浏览到该服务。如果可能的话,您如何自行托管服务的代码
  • 我不能轻易——现在——发布更多内容。自上次在此 PC 上运行以来,WCF 服务配置未更改。与代码相同。它也适用于其他 PC。如果我从 IE 浏览它,我会得到相同的 503 Service Unavailable。
  • 您能否尝试删除您的 asp.net 临时文件,然后尝试有时这些文件不会被删除并导致此类问题。
  • 不,他们没有。这与 ASP.NET 无关。但我还是做到了。没有变化。
  • 嗯。把它留在周末(没有重新启动);今天早上工作正常。

标签: wcf http.sys


【解决方案1】:

又遇到了问题。用 URL ACL 到处乱逛。有几个 URL ACL 可以被认为是不明确的。

我有http://+:80/Foo/http://+:80/Foo/Bar/http://localhost:80/Foo/Bar/。我删除了除“localhost”之外的所有内容,它开始工作了。

不知是因为模棱两可,还是因为删除额外内容导致某些东西被重置,我不知道......

【讨论】:

  • 我在使用自托管 ServiceStack 服务时遇到了同样的问题。我使用netsh http show urlacl 列出了保留的URL,然后使用netsh http delete urlacl 删除了不明确的URL,只留下了本地主机。
  • 我刚刚在使用自托管 Nancy 服务时遇到了同样的问题。
猜你喜欢
  • 1970-01-01
  • 2011-01-19
  • 2020-07-12
  • 1970-01-01
  • 2013-09-06
  • 2021-12-22
  • 1970-01-01
  • 2015-08-10
  • 2012-12-17
相关资源
最近更新 更多