0

エラーログファイルに奇妙なエラーが表示されます。RequireHttpsAttributeAppHarborのカスタムを使用しています: https ://gist.github.com/915869 。

私はホームコントローラーにこの属性を持っており、正常に動作していますが、1日に5〜10回、次のエラーで一部のリクエストが失敗したと言えます。

The requested resource can only be accessed via SSL.
Stack Trace:
   at System.Web.Mvc.RequireHttpsAttribute.HandleNonHttpsRequest(AuthorizationContext filterContext)
   at Osmosis.RequireHttpsAttribute.OnAuthorization(AuthorizationContext filterContext) in d:\temp\bfzenor31c\input\prj\Infrastructure\Extensibility\RequireHttpsAttribute.cs:line 35
   at System.Web.Mvc.ControllerActionInvoker.InvokeAuthorizationFilters(ControllerContext controllerContext, IList`1 filters, ActionDescriptor actionDescriptor)
   at System.Web.Mvc.Async.AsyncControllerActionInvoker.<>c__DisplayClass25.<BeginInvokeAction>b__1e(AsyncCallback asyncCallback, Object asyncState

RequireHttpsAttributeの35行目は次のとおりです。

HandleNonHttpsRequest(filterContext);

そのため、「https」は「X-Forwarded-Proto」リクエストヘッダーで提供されませんでした。しかし、私が理解できない理由で、httpsへのリダイレクトは失敗しました。

これは要求されたURLです:http ://www.mydomain.com: 14685 /、[RequireHttps]属性を持つコントローラーホームアクションインデックス。

任意のポインタをいただければ幸いです。

4

1 に答える 1

1

AppHarborは、新しいバージョンがデプロイされるたびに、このようなリクエストをサイトに送信します。これは予熱プロセスの一部であり、問​​題の原因である可能性が高いと思います。

これがエラーとして表示されないようにする方法を検討します。

于 2013-01-11T17:42:21.783 に答える