SharePoint Server で Web アプリケーションのキャッシュ設定を構成する

適用対象:yes-img-13 2013yes-img-162016 yes-img-192019 yes-img-seSubscription Edition no-img-sopSharePoint in Microsoft 365

この記事では、ディスク ベースの BLOB キャッシュ、ページ出力キャッシュ プロファイル、および SharePoint Server の Web アプリケーションのオブジェクト キャッシュを構成する方法について説明します。

BLOB キャッシュの有効化と構成、ページ出力キャッシュ プロファイルおよびオブジェクト キャッシュの構成変更は、その変更を適用する Web アプリケーションの web.config ファイルで行います。 web.config ファイルに対して加えた変更は、その Web アプリケーション内のすべてのサイト コレクションに適用されます。

SharePoint Server には、ファーム キャッシュ設定が正しいことと、キャッシュが最大パフォーマンスで実行されていることを確認できるキャッシュ パフォーマンス モニターが含まれています。 詳細については、「 SharePoint Server 2016 でのキャッシュ パフォーマンスの監視」を参照してください。

注:

ページ出力キャッシュ プロファイルおよびオブジェクト キャッシュを Web アプリケーション レベルで構成すると、サイト管理者がサイト コレクション レベル以下で行った構成よりも優先されます。

ヒント

BLOB キャッシュがコンテンツと同期しなくなることがあります。 たとえば、コンテンツ データベースを修復した後では、BLOB キャッシュはコンテンツと同期していません。 この状況を修正するには、BLOB キャッシュをフラッシュする必要があります。 詳細については、「 SharePoint Server で BLOB キャッシュをフラッシュする」を参照してください。

詳細については、「 SharePoint Server でのキャッシュ設定操作」を参照してください。

BLOB キャッシュ設定を構成する

既定では、ディスク ベースの BLOB キャッシュは無効になっており、使用する場合にはフロントエンドの Web サーバーで有効にする必要があります。 Web アプリケーションでディスク ベースのキャッシュ設定を構成するには、次の手順に従います。

重要

web.config ファイルに変更を加える前に、ファイルを誤って変更した場合に元のファイルを復元できるように別の名前 (web.config1 など) でコピーを作成してください。

BLOB キャッシュ設定を構成するには

  1. 次の管理資格情報があることを確認します。BLOB キャッシュ設定を構成するには、ローカル コンピューターで Administrators グループに属している必要があります。

  2. [ サーバー マネージャー] を開いて、[ ツール] をクリックし、[ インターネット インフォメーション サービス (IIS) マネージャー] を選択します。

  3. インターネット インフォメーション サービス (IIS) マネージャーの [ 接続 ] ウィンドウで、Web アプリケーションを含むサーバー名を展開し、[ サイト ] を展開して、作成された Web アプリケーションまたはアプリケーションを表示します。

  4. ディスク ベースのキャッシュを構成する Web アプリケーションの名前を右クリックし、[ エクスプローラー] をクリックします。 Windows エクスプローラーが起動して、選択した Web アプリケーションのディレクトリが表示されます。

  5. [ 開く ] ダイアログで、[ メモ帳] をクリックし、[OK] をクリック します

  6. web.configメモ帳ファイルで、次の行を見つけます。 <BlobCache location="C:\BlobCache\14" path="\.(gif|jpg|jpeg|jpe|jfif|bmp|dib|tif|tiff|themedbmp|themedcss|themedgif|themedjpg|themedpng|ico|png|wdp|hdp|css|js|asf|avi|flv|m4v|mov|mp3|mp4|mpeg|mpg|rm|rmvb|wma|wmv|ogg|ogv|oga|webm|xap)$" maxSize="10" enabled="false" />

    イメージ表示を使用している場合、イメージの既定の最大サイズは、40 メガピクセルです。 この値を変更するには、imageRenditionMaxSourcePixels パラメーターを追加する必要があります。 例:<BlobCache location="C:\BlobCache\14" path="\.(gif|jpg|jpeg|jpe|jfif|bmp|dib|tif|tiff|themedbmp|themedcss|themedgif|themedjpg|themedpng|ico|png|wdp|hdp|css|js|asf|avi|flv|m4v|mov|mp3|mp4|mpeg|mpg|rm|rmvb|wma|wmv|ogg|ogv|oga|webm|xap)$" maxSize="10" imageRenditionMaxSourcePixels="100000000" enabled="true" /> これにより、Image Renditions の最大イメージ サイズが約 100 メガ ピクセルで動作するように設定されます。

  7. この行で、 属性を location 変更して、キャッシュ サイズに対応できる十分な領域を持つディレクトリを指定します。

    注:

    サーバーのオペレーティング システム スワップ ファイルまたはサーバーのログ ファイルが保存されているドライブ上ではないディレクトリを指定することを強くお勧めします。

  8. キャッシュするファイルの種類の一覧からファイルの種類を追加または削除するには、属性に対 path して正規表現を変更して、適切なファイル拡張子を含めるか削除します。 ファイル拡張子を追加する場合は、このコード行に示されているとおり、必ずファイルの種類の間をパイプ (|) で区切ってください。

  9. キャッシュのサイズを変更するには、 maxSize の新しい数値を入力します。 サイズはギガバイト (GB) で表され、10 GB が既定です。

    重要

    キャッシュ サイズを 10 GB 未満に設定することはお勧めしません。 キャッシュ サイズを設定するときは、キャッシュに格納されるコンテンツの予想サイズよりも少なくとも 20% 大きいバッファーを提供するのに十分な数値を指定してください。

  10. BLOB キャッシュを有効にするには、属性を enabled から "false""true"変更します。

  11. メモ帳のファイルを保存し、閉じます。

注意

web.config ファイルへの変更を保存すると、インターネット インフォメーション サービス (IIS) 7.0 内の Web アプリケーションは自動的にリサイクルされます。 このリサイクルにより、その Web アプリケーションに含まれているサイトに対するサービスが短時間中断されることがあり、そのためにユーザーのセッション状態が失われる可能性があります。 IIS 7.0 における Web アプリケーションのリサイクルについては、「IIS プロセスのリサイクル」を参照してください。

キャッシュ プロファイル設定を構成する

キャッシュ プロファイル設定は、サイト コレクション管理者によってサイト コレクション レベルで、またはフロントエンド Web サーバー上で管理者によって Web アプリケーション レベルで、ユーザー インターフェイスから構成できます。 ページ出力キャッシュ プロファイルをサイト コレクション レベルまたは Web アプリケーション レベルで構成する前に、ページ出力キャッシュをサイト コレクション レベルで有効にしておく必要があります。 ページ出力キャッシュ プロファイルが Web アプリケーション レベルで有効にされていると、web.config で指定された設定がすべてのページ出力キャッシュ プロファイルに使用され、サイト コレクション レベルでユーザー インターフェイスから入力された値があってもオーバーライドされます。

注:

ページ出力キャッシュおよび関連するキャッシュ プロファイル設定を使用するには、サイトで発行機能を使用している必要があります。

注:

コンテンツ検索 Web パーツには既知の問題が存在します。 出力キャッシュを使用するページでは、Web パーツの SendContentBeforeQuery 設定が正しく機能しません。 この問題は、2013 年 3 月の SharePoint Server 2013 の累積更新プログラムで解決されました。 詳細については、Microsoft サポート技術情報の記事 2767999: SharePoint Server 2013 の更新プログラムの説明 (2013 年 3 月 12 日) をご覧ください。

次の手順を使用して、Web アプリケーションのキャッシュ プロファイル設定を構成します。

重要

web.config ファイルに変更を加える前に、ファイルを誤って変更した場合に元のファイルを復元できるように別の名前 (web.config1 など) でコピーを作成してください。

ページ出力キャッシュ プロファイルの設定を構成するには

  1. 次の管理資格情報があることを確認します。キャッシュ プロファイル設定を構成するには、ローカル コンピューターで Administrators グループに属している必要があります。

  2. [ サーバー マネージャー] を開いて、[ ツール] をクリックし、[ インターネット インフォメーション サービス (IIS) マネージャー] を選択します。

  3. インターネット インフォメーション サービス (IIS) マネージャーの [ 接続 ] ウィンドウで、Web アプリケーションを含むサーバー名を展開し、[ サイト ] を展開して、作成された Web アプリケーションまたはアプリケーションを表示します。

  4. ディスク ベースのキャッシュを構成する Web アプリケーションの名前を右クリックし、[ エクスプローラー] をクリックします。 Windows エクスプローラーが起動して、選択した Web アプリケーションのディレクトリが表示されます。

  5. web.configを右クリックし、[開く] をクリックし、このファイルを開くために使用するプログラムを見つける必要がある場合は、[メモ帳] を選択します。

  6. web.configメモ帳ファイルで、次の行を見つけます。 <OutputCacheProfiles useCacheProfileOverrides="false" varyByHeader="" varyByParam="*" varyByCustom="" varyByRights="true" cacheForEditRights="false" />

  7. Web アプリケーション レベルでキャッシュ プロファイルを有効にするには、属性を useCacheProfileOverrides から "false""true"変更します。

    注:

    この属性を true に設定すると、web.config で指定された設定がすべてのページ出力キャッシュ プロファイルで使用されます。 サイト コレクション レベルでユーザー インターフェイスから入力された値があっても、オーバーライドされます。

  8. 属性をvaryByHeaderオーバーライドするには、.NET Framework クラス ライブラリ エントリ HttpCachePolicy.VaryByHeaders プロパティで指定されているカスタム パラメーターを入力します。

  9. 属性をvaryByParamオーバーライドするには、.NET Framework クラス ライブラリ エントリ HttpCachePolicy.VaryByParams プロパティで指定されているカスタム パラメーターを入力します。

  10. 属性をvaryByCustomオーバーライドするには、.NET Framework クラス ライブラリ エントリ HttpCachePolicy.SetVaryByCustom メソッドで指定されているカスタム パラメーターを入力します。

  11. 属性を varyByRights オーバーライドするには、値を から "true" に変更します "false"。 これにより、他のすべてのユーザーと同じキャッシュ ページを参照するために、セキュリティ保護可能なすべてのオブジェクトに対する同一の有効な権限は不要になります。

  12. 属性を cacheForEditRights オーバーライドするには、属性を cacheForEditRights から "false""true"変更します。 これにより、通常の動作がバイパスされ、編集権限を持つユーザーのページがキャッシュされます。

  13. メモ帳のファイルを保存し、閉じます。

注意

web.config ファイルへの変更を保存すると、インターネット インフォメーション サービス (IIS) 7.0 内の Web アプリケーションは自動的にリサイクルされます。 このリサイクルにより、その Web アプリケーションに含まれているサイトに対するサービスが短時間中断されることがあり、そのためにユーザーのセッション状態が失われる可能性があります。 IIS 7.0 での Web アプリケーションのリサイクルの詳細については、「 Web サーバーの起動または停止 (IIS 8)」を参照してください。

オブジェクト キャッシュ設定を構成する

オブジェクト キャッシュ設定は、サイト コレクション管理者がサイト コレクション レベルでユーザー インターフェイスから構成でき、既定では有効です。 フロントエンド Web サーバーで、キャッシュの最大サイズを Web アプリケーション レベルで構成することにより、キャッシュがすべてのサイト コレクションに使用する最大メモリ量を制限できます。 たとえば、個別のサイト コレクションでオブジェクト キャッシュが 100 MB に設定され、Web アプリケーションでは 1 GB に設定されることが考えられます。 この場合、サーバー上のすべてのキャッシュによって使用されるメモリは 1 GB を超えません。

注:

オブジェクト キャッシュを使用するには、サイトの発行機能を使用している必要があります。

次の手順を使用して、フロントエンド Web サーバー上の Web アプリケーションのオブジェクト キャッシュ設定を構成します。

重要

web.config ファイルに変更を加える前に、ファイルを誤って変更した場合に元のファイルを復元できるように別の名前 (web.config1 など) でコピーを作成してください。

オブジェクト キャッシュ設定を構成するには

  1. 次の管理資格情報があることを確認します。オブジェクト キャッシュ設定を構成するには、ローカル コンピューターで Administrators グループに属している必要があります。

  2. [ サーバー マネージャー] を開いて、[ ツール] をクリックし、[ インターネット インフォメーション サービス (IIS) マネージャー] を選択します。

  3. インターネット インフォメーション サービス (IIS) マネージャーの [ 接続 ] ウィンドウで、Web アプリケーションを含むサーバー名を展開し、[ サイト ] を展開して、作成された Web アプリケーションまたはアプリケーションを表示します。

  4. ディスク ベースのキャッシュを構成する Web アプリケーションの名前を右クリックし、[ エクスプローラー] をクリックします。 Windows エクスプローラーが起動して、選択した Web アプリケーションのディレクトリが表示されます。

  5. web.configを右クリックし、[開く] をクリックし、このファイルを開くために使用するプログラムを見つける必要がある場合は、[メモ帳] を選択します。

  6. Web.configメモ帳ファイルで、次の行を見つけます。 <ObjectCache maxSize="100" />

  7. キャッシュのサイズを変更するには、 maxSize の新しい数値を入力します。 サイズはメガバイト (MB) で表され、100 MB が既定です。

  8. メモ帳のファイルを保存し、閉じます。

注意

web.config ファイルへの変更を保存すると、インターネット インフォメーション サービス (IIS) 7.0 内の Web アプリケーションは自動的にリサイクルされます。 このリサイクルにより、その Web アプリケーションに含まれているサイトに対するサービスが短時間中断されることがあり、そのためにユーザーのセッション状態が失われる可能性があります。 IIS 7.0 での Web アプリケーションのリサイクルの詳細については、「 Web サーバーの起動または停止 (IIS 8)」を参照してください。

関連項目

概念

Cache settings operations in SharePoint Server

SharePoint Server でのキャッシュとパフォーマンスを計画する