Skip to content

Risolutoを設定する

hayakawa edited this page Nov 16, 2014 · 7 revisions

戻る


Risolutoを設定する

Risolutoはデフォルトでもそれなりに動くようになっていますが、実際に使用する際は挙動を変更したくなることがあるかもしれません。すべての挙動を制御できるわけではないですが、頻繁に変更すると思われるものについてはRisolutoの設定ファイルにまとめられています。

このページではRisolutoが用意している設定ファイルやRisolutoの挙動を変更することができるファイルについて解説しています。

risoluto.ini

Risolutoの設定ファイルです。「RISOLUTO_CONF」にあります。

; ===================================================================
; This file is part of Risoluto( http://www.risoluto.org/ )
; Risoluto is released under New BSD License( http://opensource.org/licenses/bsd-license.php )
; (C) 2008-2014 Risoluto Developers / All Rights Reserved.
; ===================================================================
; 注意:理解せず値(右辺)にtrue/false/yes/noをを使用しないこと
; ===================================================================

;☆Seq関係の設定
; 【設定項目解説】
;  default     : デフォルトで使用する画面
;  error       : エラー画面で使用する画面
;  servicestop : サービス停止中画面で使用する画面
[SEQ]
default = "RisolutoApps\\Top"
error = "RisolutoApps\\Error"
servicestop = "RisolutoApps\\ServiceStop"

;☆ログ出力関係の設定
; 【設定項目解説】
;  loglevel : 出力するログレベル
;   ( stop | emerg | alert | crit | error | warn | notice | info | debug )
[LOGGING]
loglevel = "warn"

;☆セッション関係の設定
; 【設定項目解説】
;  timeout : セッションタイムアウトまでの時間(秒、0の場合はタイムアウトしない)
[SESSION]
timeout = 3600

;☆制限値の設定
; 【設定項目解説】
; max_loadavg : 許容する最大のload average(「0」なら無効、この値を超過した場合は503(Service Unavailable)応答を返す)
[LIMITS]
max_loadavg = 3

;☆テーマ関連の設定
; 【設定項目解説】
; outboards : 使用するテーマが格納されたディレクトリ名を指定
[THEME]
outboards = "vendor"

;☆認証関連の設定
; 【設定項目解説】
; provider : 認証プロバイダーを指定
; users : ユーザ情報定義が含まれるリソース
; groups : グループ情報定義が含まれるリソース
[AUTH]
provider = "Risoluto\\AuthDb"
users = "risoluto_users"
groups = "risoluto_groups"

Seq関係の設定

default/error/servicestop

このセクションでは呼び出し対象が未指定の場合(default)、エラーが発生した場合(error)、サービスストップ状態となった場合(servicestop)に呼び出すアプリケーションの指定を行うことができます。それぞれ「\RisolutoApps」から始まるクラスを指定します。

なお、「呼び出し対象が未指定の場合」とはURLに「?seq=〜」が指定されなかった場合を指します。

ログ出力関係の設定

Risolutoが標準で用意しているログ出力機能で用いる設定です。

loglevel

ここでは出力対象となる最小のログレベルを指定します。指定可能なのは「stop」、「emerg」、「alert」、「crit」、「error」、「warn」、「notice」、「info」、「debug」のいずれかです。

「stop」を指定するとログが出力されなくなります。それ以外のものは左から順に深刻度(重要度)が高いことを示します。

セッション関係の設定

Risolutoが標準で用意しているセッション管理機能で用いる設定です。

timeout

セッションがタイムアウトするまでの秒数を指定します。

制限値の設定

max_loadavg

Risolutoが動作しているサーバの負荷状況を監視し、ロードアベレージが一定値以上の場合は「サービスストップ」ページを表示します。このサービスストップページでは、画面表示以上のことをおこなわない比較的負荷の低いページになっています。そのため、高負荷状態となりサーバへの接続ができなくなることを未然に防ぐことができます。

この値に「0」をセットすると、サービスストップ機能が無効となります。数値を指定するとロードアベレージがその指定値より大きくなると自動的にサービスストップページを表示するようになります。

テーマ関連の設定

theme

RisolutoではCSSや画像などのセットを「テーマ」と呼称しています。このテーマは「RISOLUTO_DOCROOT/outboards/」配下に格納されています。

デフォルトでは「vendor」というテーマが指定されています。ユーザが独自のテーマを作成した場合は、この設定を変更することでそのテーマを使用できるようになります。

認証関係の設定

Risoluto-Core v2.2.0より追加されました。

provider

認証に使うプロバイダを指定します。現時点では「Risoluto\AuthDb」のみが使用可能です。

users

ユーザ情報が保存されているファイルやテーブル名などを指定します。この情報は、認証プロバイダによって解釈が異なります。

groups

グループ情報が保存されているファイルやテーブル名などを指定します。この情報は、認証プロバイダによって解釈が異なります。

risoluto_db.ini

このファイルはRisoluto-Core v2.1.0から追加されました。「RISOLUTO_CONF」にあります。

Risolutoが用いるDB接続に関する設定を記述するファイルです。もし、複数のDB接続を使用したい場合は、「[DB]」のセクションを例えば「[DB_FOOBAR]」のように別名でコピーしてください。

この設定については「Conf::getIni()」でセクション名のみを指定する形で使用することを想定しています。

; ===================================================================
; This file is part of Risoluto( http://www.risoluto.org/ )
; Risoluto is released under New BSD License( http://opensource.org/licenses/bsd-license.php )
; (C) 2008-2014 Risoluto Developers / All Rights Reserved.
; ===================================================================
; 注意:理解せず値(右辺)にtrue/false/yes/noをを使用しないこと
; ===================================================================

;☆DB接続情報関係の設定
; 【設定項目解説】
; dsn        : DSN(このパラメタを指定しなかった場合は下記の情報を使ってDSNが構築されます)
; driver     : PDOのドライバ識別子
; user       : DB接続ユーザ名
; pass       : DB接続パスワード
; dbname     : DB名
; host       : DBホスト名
; charset    : キャラクタセット
; persistent : 永続的な接続を使うか(true or false)
[DB]
dsn = "mysql:dbname=risoluto_db_test;hostname=localhost;charset=utf8"
driver = "mysql"
user = "root"
pass = ""
dbname = "risoluto_db_test"
host = "localhost"
charset = "utf8"
persistent = true

DB接続情報関係の設定

dsn

DSNを指定します。PDOで使用可能なものを指定してください。この項目を設定しなかった場合は、「driver」、「dbname」、「dbhost」の値を使用してDSNを組み立てます。

driver

ドライバを指定しますPDOで使用可能なものを指定してください。「dsn」が指定された場合は無視されます。

user

DB接続ユーザ名を指定します。

pass

DB接続ユーザのパスワードを指定します。

dbname

DB名を指定します。「dsn」が指定された場合は無視されます。

host

DBのホスト名を指定します。「dsn」が指定された場合は無視されます。

charset

DB接続時のキャラクタセットを指定します。Risoluto-Core v2.2.0から追加されました。

persistent

持続的接続を使用するかどうかを指定します。trueを指定すると持続的接続が有効になります。

ServiceStopファイル

Risolutoでは「RISOLUTO_SYSROOT/ServiceStop」が存在している場合は、その時点のロードアベレージに関係なくサービスストップ状態にすることができます。

空ファイルが存在していればよいので、例えば「バックアップ処理を走らせている間は無条件でサービスストップにする」などといったことが簡単に行えます。

URL_CANONICALファイル

この機能はRisoluto-Core v2.1.0以降で使用可能です。それ以前の場合は「カスタマイズのためのヒント:index.php」を参照してください。

Risolutoでは「RISOLUTO_SYSROOT/URL_CANONICAL」が存在している場合は、URLの正規化を行います。デフォルトでは「www.」から始まらないURLにてアクセスされた場合に、「wwwあり」のURLにステータスコード301でリダイレクトします。

もし、「www」ではない別なホスト名/サブドメインにリダイレクトしたい場合は、そのホスト名/サブドメインを「URL_CANONICAL」ファイルに記述することで対応できます。例えば「example.com」でアクセスされたときに「subdomain.example.com」にリダイレクトしたい場合は、「USE_CANONICAL」ファイルに「subdomain」と書いておきます。

単純な判定によるものなので、状況によっては不十分かもしれません。その際はmod_rewriteやユーザアプリケーションによるURLの正規化を検討してください。

RisolutoIgnoreファイル

この機能はRisoluto-Core v2.1.0以降で使用可能です。

RISOLUTO_APPS」配下に配置されたアプリケーションは、適切に作成されており適切なURLを指定すれば表示することが可能です。しかし、場合によっては特定のディレクトリ内の一部またはすべてを無効にしたいことがあるかもしれません。「RisolutoIgnore」ファイルをつかうことで一部または全部を無効化することができます。

無効化したいファイルが存在するディレクトリに「RisolutoIgnore」という名称の空ファイルを作成します。これにより、そのディレクトリ内のすべてのクラスを呼び出すことができなくなります。サブディレクトリには影響しないので、無効化したいファイルが存在するすべてのディレクトリに配置する必要があります。

一部だけを無効化したい場合は「RisolutoIgnore」ファイル内に1行1ファイルとなるよう無効化したいクラスを列挙します。例えば「?seq=Sample_Sample1」と「?seq=Sample_Sample2」で呼び出されるものを無効化したい場合は下記のようになります。

RisolutoApps\Sample\Sample1
RisolutoApps\Sample\Sample2

必ず「RisolutoApps」から始まる完全なクラス名を記述する必要があります。


戻る

Clone this wiki locally
You can’t perform that action at this time.