1 つの Windows 2008 IIS サーバーに 2 つのサイトをセットアップしています。最初のサイトで、ユーザーが Web ページにアクセスすると、次の単純な C# コードを使用して Cookie が作成されます。
<%
HttpCookie myCookie = new HttpCookie("MyTestCookie");
myCookie.Value = "Hi";
myCookie.Expires = DateTime.Now.AddMinutes(1);
Response.Cookies.Add(myCookie);
>%
このサイトが実際に Cookie を「見る」ことができることを確認しました。次のコードを使用してその値を表示できます。
<% Response.Write(Request.Cookies["MyTestCookie"].Value); %>
まったく同じサーバーでホストされている他のサイト。次のコードを使用して、Cookie に値が割り当てられているかどうかを確認します。
if (Request.Cookies["MyTestCookie"] == null)
{
lblErr.Text = "Cookie is null.";
}
else
{
lblErr.Text = Request.Cookies["MyTestCookie"].Value;
}
ヌルです。しかし、ほんの数日前までは、null ではありませんでした。実際のサイトの完全なコードでは、少数のユーザーを除いてすべてのユーザーで機能していました。これらの特定のユーザーのトラブルシューティングを試みたところ、すべての人に対して機能しなくなりました。
何が間違っているのかわかりませんが、完全に独立していてお互いを認識していない 2 つのサイト間で値を渡す必要があります。同じサーバー上にある場合、ファーストパーティの Cookie は正常に機能すると思いました。私は何を間違っていますか?