SITECORE MANIA 開発者向け技術ブログ

その他

諸岡

諸岡

ロール、環境別にConfigを適応させる方法

Sitecore9からアプリケーションの機能別のロール設定が追加されました。

そのロールを利用することで環境の切り替えだけではなく、環境別にConfigを適応することができます。

 

Sitecoreの標準ロールは以下の種類が定義されています。

  • ContentDelivery
  • ContentManagement
  • Processing
  • Reporting
  • Standalone

この設定はWeb.configに下記の用に記載されます。

<appSettings>
  <add key="role:define" value="Standalone" />
</appSettings>

 

例えばConfigでローカル環境だけに適応させたい設定がある場合は

まず上記の設定にカスタムの環境名(今回はLocal)を追加します。

<appSettings>
  <add key="role:define" value="Standalone,Local" />
</appSettings>

 

※ 標準のロールが含まれていないとエラーになるため注意してください。

 ローカルのみ適応させたいConfigに下記のようにrole属性を付与します。

<configuration xmlns:patch="http://www.sitecore.net/xmlconfig/" xmlns:role="http://www.sitecore.net/xmlconfig/role/">
 <sitecore role:require="Local">
 **********************
 </sitecore>
</configuration>

※ configrationタグの属性に「xmlns:role」が必要なので、ない場合は追加してください。

 これで上記のConfigはWeb.configのロールに「Local」が設定されている場合のみ有効になります。

 「role:require」には単一の名前だけなく「or」や「and」の論理演算子を使用できるので「Standalone」かつ「Local」といった指定も可能です。

 <sitecore role:require="Standalone and Local">
 **********************
 </sitecore>



※エントリーの内容・画像等は、公開時点での情報に基づきます。
※Sitecoreのバージョンによって実装されている機能が異なります。

この記事を読んだ人はこちらの記事も読んでます

Sitecore導入に関するご相談・資料ダウンロード

導入をご検討・ご依頼の方や、サービスについてご不明点がございましたらお気軽にお問い合わせください。

Sitecoreの運用問題を解決する

既にSitecoreを導入しているお客様向けサービス