MVC 4 アプリがあり、既定の認証プロバイダーを使用しています。永続的な Cookie を使用していません。
開発には問題はありませんが、HostGator でホストされている場合、新しいアイテム (HTTP POST) を作成しようとすると、ログオフされることがあります。これが発生すると、認証されていないかのようにログオン ページが表示されます。
HostGator は複数の Web サーバーにアプリを持っていないので、マシンキーのことを心配する必要はないと考えています。私が間違っている?
これが発生した場合は、再度ログインしてアイテムを再度作成するだけで成功します。これが発生すると、問題を再現することはできません。ブラウザを再度開いてみたり、別のブラウザを開いてみたりしましたが、アイテムの作成は常に機能します。ずっと後で試した場合にのみ、再び発生するようです。
いくつかの追加情報、タイムアウトは 2880 (MVC プロジェクトのデフォルト) に設定されています。それでも、私はそれについて言及したいと思いました。
そのため、IIS ログやイベント ビューアーを見て何が起こっているのかを把握することはできませんが、アプリにログを追加することはできます。誰が何をチェックするか、または診断するためにどのログを追加するかについてのアイデアを提供できますか?
ありがとう
編集
IIS のログにアクセスできることがわかったので、成功した POST と失敗した POST を比較したところ、すぐに何かに気づきました。
最初に GET を実行してアイテム/作成ページ/ビューをロードしたとき、cs-username が入力されましたが、アイテムを作成するために POST を実行したときに、それはなくなりました。再度ログインしてアイテムを正常に作成できたとき、POST で cs-username が入力されていることがわかります。
なぜGETとPOSTの間で消えるのでしょうか? GET から POST まで 7 分の遅延がありましたが、GET の 1 分前にログオンしたことがわかります。つまり、ポストが発生した時点でセッションはわずか 8 分しか経過していませんでした。sessionstate が明示的に構成されていないことを再確認したので、デフォルトは 20 分です。私は何かに夢中になっているように感じますが、正確にはわかりません。