6

作为 Azure 网站运行的 MVC 3 应用程序有一个奇怪的问题。过去我在使用 Azure 时遇到过问题,但新的网站概念几乎可以完美运行,除了这个:

DotNetOpenAuth.Messaging.ProtocolException: No OpenID endpoint found.

这只发生在谷歌上,只发生在 Azure 上。在本地运行它工作正常,在 AppHarbor 上运行它工作正常,但在 Azure 上,每次尝试使用 Google 进行 OpenID 登录都会由于该异常而导致服务器错误(使用 Airbrake 跟踪)。

自己看看,尝试在我的网站上用谷歌登录,如果你立即得到一个服务器错误页面,这意味着 DNOA 正在呕吐。所有其他登录方法都可以正常工作,包括也是 OpenID 的 Yahoo 和 AOL。

PS:不要尝试太多次,AirBrake 会很乐意向我的电子邮件地址发送垃圾邮件:<

4

2 回答 2

3

在调用之前尝试将此代码添加到您的网站OpenIdRelyingParty.CreateRequest

ServicePointManager.SecurityProtocol = SecurityProtocolType.Ssl3;

在某些 Azure 配置中,这已被证明可以解决问题。

于 2012-06-20T03:22:45.480 回答
-1

我在 global.asax 中有这个功能:

AreaRegistration.RegisterAllAreas();

删除此行后,一切正常。

我在我的应用程序中添加了一些区域,这个功能是 VS2012 自动添加的。

于 2013-01-24T15:09:27.407 回答