Sharepoint CSS キャッシュ/カスタマイズに関する奇妙な問題を解決してもらえますか?

StackOverflow https://stackoverflow.com/questions/1312801

質問

SharePoint CSS で奇妙な状況が発生しています。

これは .wsp ソリューションの一部としてデプロイされており、これまではすべて問題ありませんでした。

デプロイするファームにも、いくつかの Web フロント エンドと 1 つのアプリ サーバーと SQL ボックスがあります。

症状としては、ソリューションをデプロイし、Web ブラウザを使用してページを表示すると、そのページにはスタイルがなく、.css に直接アクセスすると、.css の最初の 100 バイトほどが表示されます。

ただし、SharePoint Designer にアクセスしてファイルを見ると問題ないように見えます。また、それをチェックアウトして公開すると (ファイルをカスタマイズしますが、実際には内容は何も変更しません)、Web サイトは正常に動作し、CSS は完全にダウンロードされます。

サーバーには、ディスク ベースのキャッシュとオブジェクト キャッシュというかなり複雑なキャッシュがいくつかあります。私の知る限り、これらはクリアされています(いずれにせよ、issreset でクリアされるはずです...)そうすべきではないでしょうか?)

このツールを使用してファーム全体からブロブキャッシュをクリアしました http://blobcachefarmflush.codeplex.com/

役に立ちましたか?

解決

あなたが説明している問題は、私が以前に遭遇した問題です。私が知っていること、疑問に思っていること、そしてシナリオのトラブルシューティングの方法を共有させてください。

まず、潜在的な問題の原因としてキャッシュを疑っているようですね。MOSS 公開機能セットの場合、実際には 3 つの異なるキャッシュ メカニズムが動作しています。オブジェクト キャッシュ、BLOB キャッシュ、ページ出力キャッシュです。デフォルト設定でオンになっていると仮定して、実行すべき唯一のメカニズムは BLOB キャッシュです。オブジェクト キャッシュもページ出力キャッシュも、スタンドアロン スタイルシートと同様に接触すべきではありません。

ファームレベルの BLOB キャッシュ フラッシュ機能を使用してキャッシュをフラッシュしようとしました。これにより、MOSS にすべての BLOB キャッシュ データをダンプするように指示されます。これを確認するには、ファイル システムを調べて、フラッシュ後に 3 つの .bin フォルダーのみが残っていることを確認します。

IISRESET に関する具体的な質問:いいえ、実際には IISRESET しません BLOB キャッシュをクリアします。BLOB キャッシュの内容は、Web アプリケーションにサービスを提供するアプリケーション プールの存続期間を超えて存続します。(これまでと同様に) キャッシュをクリアする機能を使用するか、手動でファイルを削除する必要があります。他の行動方針がまったくない場合を除き、後者はお勧めしません。手動ルートを選択して試す場合は、ファイル システムからファイルを削除する前に、必ず W3SVC サービスをシャットダウンしてください。そうしないと、実際のファイル削除プロセスがキャッシュの再作成により競合状態になり、破損が発生する可能性があります。停止した W3SVC でファイルを削除した後、W3SVC のバックアップを再度開始できます。

BLOB キャッシュの内部とその動作の詳細については、私のブログ記事を参照してください。 http://sharepointinterface.com/2009/06/18/we-drift-deeper-into-the-sound-as-the-flush-comes/

BLOB キャッシュが発生している動作の要因であるかどうかを確認するには、Web アプリケーションの web.config を変更し、削除するファイル パターンを調整します。 CSS ファイルタイプのリストから <ブロブキャッシュ> 要素を削除してから IIS を再起動します (または少なくともアプリ プールをリサイクルします)。

経験に基づくもう 1 つの可能性は、BLOB キャッシュの異常以外の何かが発生していることです。私にとって重要な観察は、CSS スタイルシートへの直接リクエストが最初の 100 バイト程度しか返さないことを観察したという形で得られました。

ひょっとして、WFE と呼び出し元の間にインテリジェント ネットワーク ハードウェア (つまり、侵入検知ハードウェア、またはアプリケーション/レイヤー 7 フィルタリングを実行している可能性のあるもの) がありますか?侵入検知システムと IPS システムは、あなたが目にしている問題の多くの原因であり、あなたが説明しているような「奇妙な」動作を見たときは、私が最初に立ち寄る場所の 1 つです。私のクライアントの 1 つでは、アクティブな IPS を備えた Juniper ファイアウォールが介在しているため、説明に一致する問題 (CSS および JS ファイルが切り詰められる) が発生しました。(テストのために) IPS をオフにすると、問題はすぐに解決しました。その後、ネットワーク チームは、IPS がアクティブな状態を維持できるように問題を修正するためのアップデートをジュニパーに求めました。

BLOB キャッシュをオフにして (またはファイル パターンから CSS 拡張子を削除して)、違いが生じるかどうかを確認してください。そうでない場合は、ネットワーク チームに相談して、返される応答ストリームに何かが起こっているかどうかを確認してください。そこから始めたいと思います。うまくいけば、これら 2 つのうちの 1 つが役に立ちます。

ちょっとした補足:もしお時間がありましたら、CodePlex から取得した BlobCacheFarmFlush ソリューションの使用経験についてお聞きしたいと思います。私がこれを書いたので、良いことも悪いことも含めて、あなたの意見をぜひ聞きたいです :-)

  • ショーン (sean@sharepointinterface.com)
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top