2.10 「httpd.conf」でのサンプル

httpd.conf を使った全体のサンプルをご覧ください。

注釈

このサンプルでは、httpd.confの一部抜粋ですので、そのまま利用しても動くものではありません。

「ポリシー」

エントリーポイント は以下のように、ファイル名を模したものとします。

/httpd.conf

デバイス側からは、

http://config-an1.icgw.ntt.com/httpd.conf

への HTTP GET を設定しておきます。

実際の画面では以下のような入力となります。

ポリシーサンプル

詳しくは こちらの 「ポリシー」 とは を参照ください。


「テンプレート」

テンプレート には、もちろん、httpd.conf の内容を全て記載する事になりますが、サンプルでは一部抜粋し、 「共通パラメータ」 や 「デバイスグループ」 にて置換する想定の箇所を例示します。

ServerAdmin {{ global.admin }}
DocumentRoot {{ global.documentRoot }}
ErrorLog {{ device.errorlog}}
LogLevel {{ global.logLevel }}

実際の画面では以下のような入力となります。

テンプレートサンプル

詳しくは こちらの 「テンプレート」 とは を参照ください。


「共通パラメータ」

「テンプレート」 にて記載した内容のうち、 「プロファイル」 として取りまとめる単位全てに影響するパラメータを記載してみます。

{
    "admin": "thisGroupAdmin@yourcompany.com",
    "documentRoot": "/Library/WebServer/Documents/thisGroup",
    "logLevel": "warn"
}

実際の画面では以下のような入力となります。

グローバルサンプル

詳しくは こちらの 「共通パラメータ」 とは を参照ください。


「デバイスグループ」

「テンプレート」 にて記載した内容のうち、 デバイス固有の値を置換するパラメータを記載します。設定例の「$imsi」は、 プレースホルダ としてSIMのIMSIの値を置換します。

{
    "default": {},
    "imsi_XX0011875569092": {
        "errorlog": "/private/var/log/apache2/imsi_$imsi_log"
    },
    "imsi_XX0014882899212": {
        "errorlog": "/private/var/log/apache2/imsi_$imsi_log"
    },
    "imsi_XX0016741525417": {
        "errorlog": "/private/var/log/apache2/imsi_$imsi_log"
    },
    "imsi_XX0017403631567": {
        "errorlog": "/private/var/log/apache2/imsi_$imsi_log"
    }
}

実際の画面では以下のような入力となります。

デバイスサンプル

詳しくは こちらの 「デバイスグループ」 とは を参照ください。

注釈

設定例として 「デバイスグループ」 にて設定しましたが、「$imsi」の プレースホルダ 機能を利用する場合、本来は 「共通パラメータ」 にて同設定を実施する方が効率的です。

実際にデバイス側が取得する httpd.conf

上述の例では、4つのデバイスが取得する設定になっていますので、 「プロファイル」 の機能である「生成」を行う事で、デバイスそれぞれ専用の4つのファイルを作成します。 作成した結果は以下のようになります。

imsi_XX0011875569092 用のファイル

ServerAdmin thisGroupAdmin@yourcompany.com
DocumentRoot "/Library/WebServer/Documents/thisGroup"
ErrorLog "/private/var/log/apache2/imsi_XX0011875569092_log"
LogLevel warn

imsi_XX0014882899212 用のファイル

ServerAdmin thisGroupAdmin@yourcompany.com
DocumentRoot "/Library/WebServer/Documents/thisGroup"
ErrorLog "/private/var/log/apache2/imsi_XX0014882899212_log"
LogLevel warn

imsi_XX0016741525417 用のファイル

ServerAdmin thisGroupAdmin@yourcompany.com
DocumentRoot "/Library/WebServer/Documents/thisGroup"
ErrorLog "/private/var/log/apache2/imsi_XX0016741525417_log"
LogLevel warn

imsi_XX0017403631567 用のファイル

ServerAdmin thisGroupAdmin@yourcompany.com
DocumentRoot "/Library/WebServer/Documents/thisGroup"
ErrorLog "/private/var/log/apache2/imsi_XX0017403631567_log"
LogLevel warn

上述の例ですと、エラーログは個別のファイル名を設定させています。こうしておくと後に 「ストレージ」 機能などを利用して、エラーログファイルを全て収集した際に、ファイル名が重複しないため、個別に管理が可能になります。その他の設定値はデバイスに依存しない設定のため、 「共通パラメータ」 にて設定を行いました。