---
title: "Sitecoreデバイス検出の設定"
slug: "configure-sitecore-device-detection"
abstract: "デバイス情報プロバイダー、キャッシュ設定、クラウド用のデバイス検出サービス、デバイス検出データベースの設定を行ってください。"
---
# Sitecoreデバイス検出の設定

Sitecore 9.0以降からは、Sitecoreサービスと*51Degrees*が提供するデータベースを使用できるようにSitecoreデバイス検出がデフォルトで有効になっています。ただし、いくつかのデバイス検出設定オプションでさらにインストールをカスタマイズすることも可能です。

> !注Sitecoreデバイス検出サービスを完全にカスタマイズするには、[コンテンツ配信サーバーの設定](https://doc.sitecore.com/xp/en/developers/100/platform-administration-and-architecture/scaling-and-configuring-content-delivery.html)も可能です。

Standalone(オールインワン)、Content Delivery、Processingサーバーのデバイス検出を有効にしてください。ルールベースの構成を使用している場合は、これは自動的に行われます。

## デバイス情報プロバイダー

自分のデータベースを使いたい場合は、デバイス情報提供者をsitecore/deviceDetectionManager/providersで指定できます。例えば:

<deviceDetectionManager defaultProvider="51degrees">
 <providers>
 <clear />
 <add name="51degrees" type="Sitecore.CES.DeviceDetection.Providers.FiftyOneDegrees.DeviceInformationProvider51Degree, Sitecore.CES.DeviceDetection" />
 </providers>
 </deviceDetectionManager>

デフォルト値は以下の通りです: Sitecore.CES.DeviceDetection.Providers.FiftyOneDegrees.DeviceInformationProvider51Degree, Sitecore.CES.DeviceDetection

## デバイス検出キャッシュ

デバイス検出キャッシュは解決済みのデバイス情報を保存します。訪問者が幅広いデバイスを使用している場合、ページコンテンツへのアクセス遅延を避けるためにデフォルトのキャッシュサイズを増やすことができます。

-   キャッシュサイズ(バイト、KB、MB、GB)をsitecore/Settings/ で指定してくださいDeviceDetection.DeviceDetectionCacheSize.
    
    例えば:
    
    <setting name= "DeviceDetection.DeviceDetectionCacheSize" value="1024" />
    
    <setting name= "\`\`DeviceDetection.DeviceDetectionCacheSize" value="10MB" />
    

> !重要解決済みのデバイス情報をすべて保存できるほどのキャッシュサイズを確保してください。デフォルト値は10MBです。キャッシュを無効にするには、キャッシュ値を0に設定してください。これは推奨されません。なぜなら、ウェブサイトのパフォーマンスに悪影響を及ぼすからです。

## クラウド上のデバイス検出サービス

Sitecoreカスタマーエクスペリエンスサービスでは、クラウド上でデバイス検出サービスの名前を指定する必要があります。デフォルト名はDeviceDetectionです。Sitecoreプロダクトサポートサービスから特に求められない限り、名前を変更しないでください。ただし、名前を変更する必要がある場合は、こちらから変更できます: sitecore/Settings/DeviceDetection.\`\`ServiceName

## デバイス検出データベース

デバイスデータベースの保存パスを指定することで、デバイス検出データベースをさらにカスタマイズできます。 sitecore/settings/DeviceDetection.DatabasePathへ行ってください。デフォルトの場所は /App\_Data/ です。DeviceDetection.

sitecore/settings/DeviceDetection.DatabaseUpdateCheckIntervalでSitecoreがどのくらいの頻度でパフォーマンス更新を確認するかを定義できます。新しいバージョンがある場合、Sitecoreデバイス検出クライアントはSitecoreデバイス検出サービスを使ってデータベースをインスタンスにダウンロードします。デフォルト設定は1 dayです。

<setting name="DeviceDetection.DatabaseUpdateCheckInterval" value="1.00:00:00" />

例えば技術的な故障や無効ライセンスなどでデータベースが初期化に失敗した場合、再初期化を試みる頻度を指定できます。これにより [、技術的な故障](https://kb.sitecore.net/articles/872808)時にデバイス検出がどれくらい早く元に戻るかが影響します。こちらへ行く: sitecore/settings/DeviceDetection.FailDatabaseCheckInterval。

デフォルトのデータベース初期化間隔は10 minutesです。

> !注古いバージョンのデータベースは自動的に削除されるわけではありません。データベースは初期化が失敗した後にのみ削除されます。

## ファイアウォールの設定

Sitecoreデバイス検出は、デバイスデータベースのダウンロードと更新のためにSitecoreサービスへのアクセスを必要とします。デバイス検出はContent Delivery(CD)および処理ロールで動作します。これらのサーバーからの送信トラフィックがファイアウォールによって制限されている場合は、以下のURL(またはファイアウォールが対応しているワイルドカード \*.cloud.sitecore.net )に対してHTTPSプロトコルを開いてください。

-   discovery-ces.cloud.sitecore.net
-   devicedetection-ces.cloud.sitecore.net

サービスは高可用性のコンピュートホストプール上で動作します。設計上、ホストは静的IPで設定されていません。なぜなら、ホストは最大限の可用性を確保するために定期的にプールに入れ替わるからです。つまり、IPの切り替えは当然の行動であり、Microsoftは現在使用され定期的に更新されている[IPレンジの有用なリスト](https://www.microsoft.com/en-us/download/details.aspx?id=56519) を持っています。

## (オプション)デバイス検出を無効化する

デバイス検出モジュールはデフォルトで有効化されています。しかし、デバイス検出クライアントが毎日デバイス検出サービスに連絡するのを防ぎたい(デフォルト設定)かつデバイス検出機能が必要ない場合は、モジュールを無効にできます。無効にするには:

-   設定をパッチDeviceDetection.Enabled当てて、Sitecore.CES.DeviceDetection.configファイルの設定をfalseに設定してください:
    
    <setting name="DeviceDetection.Enabled" value="false" />