9

これをServerFaultに投稿しようとしましたが運が悪かったので、ここで試しています。

私のウェブサイトで静的コンテンツをホストする新しいドメインを設定し、 静的ドメインを使用した Stackoverflow のように Cookie を使用しないようにすることを考えています。そのため、先に進んでドメインを購入してセットアップする前に、最初に localhost の下の開発マシンでテストしたいと思いました (静的ファイル用に新しいドメインで IIS を実行することを計画していることを言及する必要があります)。

したがって、IIS で新しいアプリケーションを作成し、セッション状態とフォーム認証を無効にしました。メイン アプリケーションで css、images、js などのリソースが必要な場合、それらがホストされている「静的」アプリケーションへのパスを使用します。

問題は、要求されたファイルの要求と応答を見ると、session_id Cookie と asp.net 認証 Cookie がまだ定義されていることです。

私が開発マシンでやろうとしていることを達成することはまったく可能ですか、それともうまくいけば物事を正しくするために新しいドメインを購入する必要がありますか? cookieless ドメインについて読み込もうとしましたが、何が欠けているのかわかりません。

アップデート

私のセットアップは次のとおりでした。2 つの Web アプリケーションを作成しました。- Web サイト用の 1 つの Web アプリケーション - すべての静的 (CSS、画像、スクリプトなど) 用の 1 つの Web アプリケーション

両方のアプリケーションが IIS に追加され、いずれも他方のサブアプリケーションではありません。(これらは両方とも IIS 構造の下にある別個の Web サイトです)。

両方の Web サイトを同じ IP の下に置くことで結果が説明されたのではないかと思いましたが、両方のサイトを展開すると問題はなくなりました。

4

4 に答える 4

7

次のweb.config設定があることを確認してください。

  • <sessionState mode="Off" />
  • <authentication mode="None" />

私はそれをテストしていませんが、それがすべてだと思います。安全のために、IIS 7で静的コンテンツWebサイトを作成する際のアドバイスを使用して、 すべてのモジュールを無効にし、必要な場合にのみ再度有効にすることができます。

<system.webserver> 
    <modules>
        <clear />
        <add name="StaticFileModule" ... />
        ...
    </modules>
    ...
</system.webserver>

PS:キャッシュ値を設定するためのヒントについては、この回答を参照してください。

于 2011-10-27T17:19:00.700 に答える
1

基本的な考え方:

  1. IIS で新しい Web サイトを作成します (サブドメインにマップするか、完全に別のサイトにします。ユーザーがhttp://www.example.comではなくhttp://example.comからサイトにアクセスする場合、suddomain では不十分な場合があります)。最初のケースでは、Cookie はおそらく新しいサブドメインにも送信されるためです)。
  2. 新しいサイトの IIS で ASP.NET をすべて無効にします。静的コンテンツを提供するだけの場合は、ASP.Net を有効にする必要はありません
  3. 静的コンテンツを読み込んでリンクする

参照:
-サイトのパフォーマンスを向上させるために、ドメイン (別名「cookieless ドメイン」) から設定される Cookie を停止する
- IIS6 で「cookieless ドメインから静的コンテンツを提供する」ページ速度ルールを尊重する方法は?
-静的コンテンツのリクエスト中に Cookie を回避する

于 2011-11-02T18:25:57.030 に答える
0

Page の Load メソッドの最後で Response.Cookies.Clear() を試しましたか? これにより、Response オブジェクトからすべての Cookie が削除され、Cookie はクライアントに送信されなくなります。これは、Web モジュールまたは HttpHandler でも行うことができます。

于 2011-11-02T20:24:27.040 に答える
0

問題は、要求されたファイルの要求と応答を見ると、まだ session_id Cookie が定義されていることです。

これは、オブジェクト HttpRequest.Cookiesのプロパティであるためです。Request


これは理解に役立つかもしれません

于 2010-02-23T00:50:28.453 に答える