0

この vbscript を使用して毎回セッション Cookie を書き込まずに Cookie を削除する方法を見つけようとしています。

2 つの Cookie があります。最初の Cookie は、Web サイトが実行されているドメインに設定されています。

response.AddHeader "Set-Cookie","cookie1=value;expires=Sun, 18-Jan-2037 00:00:00 GMT;path=/"

これにより、ドメインが a.sitename.com に設定されます。新しいリリースでは、Cookie をプライマリ ドメインに設定します。

response.AddHeader "Set-Cookie","cookie1=value;expires=Sun, 18-Jan-2037 00:00:00 GMT;domain=sitename.com;path=/"

a.sitename.comドメイン上の Cookie を削除せずに、ドメイン上の Cookie を削除する必要がありsitename.comます。

今日までに Cookie の有効期限が切れるように設定でき、セッションの最後にクリーンアップされることがわかりました。しかし、このコードを使用するたびに、セッションの最後に期限切れになる新しい Cookie をドロップしたくありません。

If( some check here ) then
  response.AddHeader "Set-Cookie","cookie1=value;expires=Thu, 01 Jan 1970 00:00:00 GMT;path=/"
End If

ルート ドメインに同じ名前と値を持つ Cookie が存在するときに、特定のサブドメインに Cookie が存在するかどうかを確認する vbscript の最良の方法は何ですか?

4

2 に答える 2

1

そんなことはできません。「ここをチェックしてください」には、その情報がサーバー側にありません。

ブラウザーは、ユーザーが閲覧しているドメインに基づいて、どの Cookie が送信されるかを認識しています。ただし、送信された Cookie ヘッダーにはその情報が含まれていません。

いくつかの提案:

  • 別の Cookie 名を使用する
  • Cookie 名を変更できない場合は、Cookie に保存されているデータが古い値と何らかの形で下位互換性があることを確認してください。そうすれば、データの両方の「形式」を適切に処理できるようになります。
  • 私が最近遭遇した特別なケース: 本番 Cookie ( mysite.com ) がテスト Cookie ( test.mysite.com ) に干渉していました。私の解決策は、テスト環境用のカスタム HOSTS エントリを作成し、test-mysite.com としてアクセスして、Cookie が衝突しないようにすることでした。

お役に立てれば。

于 2013-11-25T11:26:51.543 に答える