設定

環境変数、フレームワーク設定、そしてモジュールごとの設定。

このページ内

設定

環境変数

.env.example を .env にコピーし、自分の値を入力してください - アプリ内のどこからでも getSystemSetting( "VAR_NAME", "default" ) で読み取れます。

変数目的
APPNAMEアプリケーションの表示名
ENVIRONMENTdevelopment または production
ASSET_URLVite 本番アセット用の公開 URL プレフィックス(デフォルトは /includes)
BOXLANG_DEBUGBoxLang のデバッグ出力を有効にします
DB_CONNECTIONSTRING完全な JDBC 接続文字列
DB_DRIVER小文字のデータベースドライバーで、bx-* JDBC ドライバーモジュールに一致します(MySQL または MariaDB の場合は mysql、その他 mssql、postgresql、h2、oracle、sqlite)- server.json の onServerInitialInstall が初回サーバー起動時に bx-${DB_DRIVER} をインストールします
DB_HOST / DB_PORT / DB_DATABASEデータベース接続の詳細
DB_SCHEMAマイグレーションランナー(.cbmigrations.json)が対象とするスキーマ。スキーマの概念がないエンジンでは空欄のままにしてください
DB_USER / DB_PASSWORDデータベースの認証情報
JWT_SECRETcbsecurity の JWT サポートの署名鍵
COOKIE_ENCRYPTION_KEYcbstorages のクッキーストレージ用の暗号化鍵。useEncryption を有効にした場合にのみ意味を持ちます(デフォルトはオフ)- 有効にする前に設定してください。さもないと、起動のたびに鍵が再生成され、以前に暗号化されたクッキーが静かに無効化されます
CBFS_ASSETS_DISK_PATHアバターとブランディングロゴを保存する cbfs の assets ディスクのファイルシステムパス(デフォルトは <app-root>/.cbfs)
COLDBOX_REINIT_PASSWORD?fwreinit に必要なパスワード。未設定の場合は起動ごとに新しいランダムな値になるため、再初期化は閉じられます - 詳細は デプロイ を参照
COLDBOX_SESSION_TIMEOUTcbstorages のセッションストレージのセッションキャッシュタイムアウト(分単位、デフォルトは 60)

フレームワーク設定 (app/config/Coldbox.bx)

設定値
defaultEventAuth.login — 未認証の訪問者はログインページに着地します
requestStartHandlerMain.onRequestStart
applicationStartHandlerMain.onAppInit
exceptionHandlerMain.onException
modulesExternalLocation["/modules"]
autoMapModelstrue
jsonPayloadToRCtrue
reinitPasswordCOLDBOX_REINIT_PASSWORD、または未設定の場合は起動ごとに生成される新しいランダムな UUID

development() 環境オーバーライドは、Whoops エラーテンプレート、WireBox シングルトンのリロード、ColdBox デバッグモードを有効にし、reinitPassword をクリアするため、ローカルでは ?fwreinit=1 がパスワードなしで動作します。LogBox はコンソールアペンダーと、app/logs に書き込むローリングファイルアペンダーで設定されています。

アプリ設定とフレームワーク設定の違い

app/config/ 配下には異なる 2 つのものが共存しており、混同しやすいので注意してください。

フレームワーク設定(Coldbox.bx、Router.bx、WireBox.bx、CacheBox.bx、Scheduler.bx)は静的でファイルベースであり、変更は次の ?fwreinit で反映されます。

アプリ設定(cbAppName、cbAllowRegistration、cbMinPasswordLength など)は DB に保存され、/settings から管理者が編集でき、SettingService.static.DEFAULTS で定義され、2 時間の TTL でキャッシュされます。

SettingService.preFlightCheck()(Main.onAppInit から呼び出されます)は、起動時に不足しているデフォルト値をデータベースにシードするため、新しいキーを DEFAULTS に追加するだけで表示されるようになります。設定は、loadConfigOverrides()/loadEnvironmentOverrides() によって読み込まれる、他の 2 つの方法でも上書きできます。

  • Coldbox.bx の variables.settings に置かれた任意の cb* プレフィックス付きキー
  • 任意の genesis_* プレフィックス付き環境変数

モジュール設定

インストールされた各モジュールには、app/config/modules/ 配下に独自の設定ファイルがあります。

モジュール主な設定
cbsecuritycbauth プロバイダー、CSRF(ローテーション式、30 分)、@secured アノテーションスキャンを行うファイアウォール、セキュリティヘッダー、JWT(HS512、60 分)— 詳細は セキュリティと権限 を参照
cbauthアイデンティティプロバイダーとしての UserService、キャッシュベースのセッションストレージ
cbmailservices本番では BXMail プロトコル、開発ではファイルプロトコル — 詳細は メール を参照
cbormエンティティ注入が有効、ページネーション maxRows: 25 / maxRowsLimit: 500
cbfsassets ディスク(デフォルトで Local プロバイダー、パスは CBFS_ASSETS_DISK_PATH から)- アバターとブランディングロゴを保存し、Assets.bx によってストリーミング配信されます — 詳細は フロントエンド を参照
cbstoragesキャッシュストレージ(セッションキャッシュ、タイムアウトは COLDBOX_SESSION_TIMEOUT から、デフォルト 60 分)、クッキーストレージ(デフォルトで暗号化オフ)
cbsecurity-passkeysパスキーサインイン用の WebAuthn リライングパーティ設定 - relyingPartyId/allowedOrigins はプレースホルダーの localhost 値であり、本番環境前に必ず変更する必要があります。詳細は デプロイ を参照
mementifierISO8601 の日付、ORM 自動インクルード、UTC 変換
このページを編集 Markdown をダウンロード 最終更新日 Oct 1, 2026, 2:02:30 PM