Manual:LocalSettings.php
MediaWiki ファイル: LocalSettings.php | |
---|---|
場所: | / |
ソース コード: | Git にありません (インストール時に作成される) |
クラス: |
LocalSettings.php
ファイルは MediaWiki インストレーションの基本的な構成設定を提供します。
このファイルの設定を確認するためには時間が必要です。
ファイルは通常、Web ベースの MediaWiki インストーラーによって生成されますが、Apache の設定と協調してパラメーターを変更できます。
ウィキ ファームとして構成された MediaWiki インストレーションでは、CommonSettings.php
を使用できます。
サーバー内での場所
LocalSettings.php
ファイルはウィキページではないため、ウェブブラウザーで開くことができません。
その代わり、サーバーのファイルシステム内のファイルです。
その内容は ウィキの初期設定時に生成され、ファイルとしてサーバに手動で転写する必要があります。
当該のファイルの保存先は MediaWiki をインストールしたフォルダとし、他のフォルダー includes/
や skins/
、またファイル api.php
と同じ階層に置きます。
もし当該ファイルを指定された階層に「置かなかった」場合、ウィキは動作しません - ウィキが「動作する」なら、 ファイルは「正しく置かれた」状態です。
保存先がわからないときはコマンドラインからたとえば find / -iname LocalSettings.php -print
と入力して探します。
(Vagrant を使用する場合は MediaWiki-Vagrant#MediaWiki_settings も参照)。
セキュリティ
通常 LocalSettings.php
にはデータベースログインなどの機密情報が書かれています。
このデータは「絶対に」公開してはいけません!
サーバ上のどこかでセキュリティ違反が 発生した時に、このファイルの内容が他の利用者に暴露されかねないからです。
データのセキュリティを向上するには、このファイルに対するUNIX 許可をきちんと設定します。Webサーバの利用者には、必ずこのファイルにアクセス権を設定します。
ファイルの所有者アカウントと同じ場合は、許可を「600」に設定可能です。
当該ファイルのオーナーがウェブサーバー「ではない」けれども、オーナーの UNIX 利用者グループに入っている場合があります。
そういう場合には許可は「640」で大丈夫です。強化したセキュリティでは、可能な限り許可を狭めてください。
さらに、ウィキが使うデータベースだけに権限を制限したMySQLユーザーをつくり、そのユーザーの認証情報を LocalSettings.php
に記しておくことができます。またデータベースサーバーへはlocalhostからしか接続できないよう設定することもできます。これにより認証情報が流出した場合も外部からのアクセスを防ぐことができます。
LocalSettings.php
の重要な部分を別のディレクトリの別のファイルに移動する方法については、Manual:データベースパスワードを安全に保管するには も参照してください。
ファイルの内容
LocalSettings.php
を編集するときは、適切なエンコーディングで上書き保存するようにしてください。エンコーディングは「ANSI as UTF-8」(バイト オーダー マーク (BOM) なしの UTF-8 エンコーディングを意味する) にしてください。(訳注: 「ANSI as UTF-8」は Notepad++ でしか使われない用語。)
LocalSettings.php
にはPHPコードが含まれています。その内容は主に変数の定義とその定義値です。通常、設定を変更することはPHP変数の値を変更することを意味します。変更内容はファイルをサーバに保存するとすぐに反映されます。手動で「再起動」する必要はありません。ただし、場合によっては変更内容が実際反映されたのを確認するのにブラウザキャッシュを消去する必要があるかもしれません。
The default values of configuration settings are set in includes/MainConfigSchema.php
, which should not be edited; if the variable you want to change is not already mentioned in your LocalSettings.php
, add a line to that file modify it appropriately.
新たな行は LocalSettings.php
の最後に追加するといいでしょう。
ファイル内には、拡張機能を指す require_once "$IP/extensions/拡張機能名.php";
や wfLoadExtension( '拡張機能名' )
のような複数の行が含まれていることもあります。
このような記述によってその拡張機能がウィキで使えるようになります。
拡張機能を利用するには LocalSettings.php
に追加の変数値を設定する必要があるかもしれません。該当する拡張機能に関する詳細な指示が書かれた説明文書を確認してください。
MediaWiki におけるほとんどの PHP ファイルと同じく、LocalSettings.php
も PHP の終了タグ ?>
では終わっていません。これは管理者が誤って新たな情報をこのタグの後に書き込んでしまうのを防ぐためです。PHP は終了タグがなくても正常に動作します。
MediaWiki ウィキファーム上でウィキを持つ場合、LocalSettings.php
ファイルへの書き込み権限 (および読み込み権限でさえ) がないかもしれません (例えば次を参照: [1])。ウィキファーム企業はあなたの望みに合わせて変更してくれないことがあります。おそらくはウィキファームのすべてのウィキ群上でほとんど同じ設定をすることが望まれています。
利用できる設定の概要
設定項目一覧や設定ファイルのコメントをみると各変数の役割を知る上で助けになるでしょう。よく使われる機能と合わせ、最も重要な変数を挙げた短いリストを以下に示します。
標準設定
インストール パス
$IP (インストール パス) 変数はウィキのベース インストレーションへのローカル ファイル のパスを保持します。
MediaWiki 1.18 以降は システムが $IP を自動的に設定します。
$IP
を LocalSettings.php
で手動で設定する必要はもうありません。
$IP
は既定で現在の作業ディレクトリになり、手動で定義しなくても使用できます。
$IP
(または MW_INSTALL_PATH
) に LocalSettings.php
で設定しようとすると、予期しない結果が生じる可能性があります。
サイト名
$wgSitename はウィキのセットアップの名前を保持します。この名前は、MediaWiki:Pagetitle などシステム全体で多く含まれます。例えばウィキペディアのタグラインの「From Wikipedia, the free encyclopedia」はこの設定を使用しています。
サイト名の語形変化
いくつかの表示言語はサイト名の語形変化に対応しています。 $wgGrammarForms の変数に適切な語形を設定できます (事例については $wgSitename 説明文書ページを参照してください)。
スクリプトパス
$wgScriptPath は MediaWiki の中心的なコードのアクティング ピースであるメインの MediaWiki スクリプトにアクセスするための URL パスの接頭辞です。 この設定は、とりわけ Apache の rewrite ルールを利用している場合、必ず Apache 設定と一致しなければなりません。
サーバー名
$wgServer にはサーバのベースURL が保持され、プロトコルも伴いますが後置のスラッシュは無視され、もし存在してもサブディレクトリは無視されます。ウィキの動作しているローカルホストか、イントラネットまたはインターネットからか、メール通知と他の数種類のコンピューターメッセージは通常、アクセス元により異なる URL で配信されます。
MediaWiki 1.34 以降、$wgServer
は LocalSettings.phpに設定の必要あり。
それ以前のバージョンでは MediaWiki がサーバ名を自動検知し、$wgServer
はオプションで自動検知の値を上書きしていました。
www.example.com がインターネットから見られるウィキのサーバーアドレスである場合、次のような行を追加する:
$wgServer = 'http://www.example.com';
ウィキページでは {{SERVER}}
というマジックワードの変数が使えます。これは $wgServer
と同じ値になります。しかしウィキメディア ファミリーでみられるようなあるウィキでは相対 URL が用いられていて、完全には展開されません。例えばこのサイトでは //www.mediawiki.org と表示されます。クリックすることも、それ自体をコピーしアドレス バーに貼り付けることもできません。
以下のように、プロトコル相対 URL も使用できます。
プロトコル相対 URL を使用する場合は、必ず $wgCanonicalServer
を設定してください。
$wgCanonicalServer
は、プロトコルやホスト名を持つオリジンが必要なコードのいくつかの場所で必要とされます。
$wgServer = '//www.example.com';
$wgCanonicalServer = 'https://www.example.com';
スクリプト名
$wgScript はメインの MediaWiki の PHP スクリプトの名前で、既定では index.php
です。スクリプト名を変更するのはおそらく好ましくありません。しかし、変更したい場合は、変更する場所はこの変数です。やろうとしていることを理解してから変更してください。
記事へのパス
$wgArticlePath は MediaWiki のページにアクセスする際に使用するパスです。
パスはメインスクリプト (通常は $wgScript
を使用) へのパスを含み、記事名部分に $1
プレースホルダーを使用します。
プリティ URL またはショート URL を作成するために Apache のリライト ルールを使用する場合、おそらく正しいパスを指し示す $wgArticlePath
を調整する必要があります。
wgArticlePath は MediaWiki の範囲内から URL を構築するために使用されることに注意してください。
間違いがあった場合、正しいURLを手作業で指定することでメインページにアクセスできるかもしれない一方で内部リンクは不正に表示されます。
URL の構成の詳細情報は Manual:短縮URL を参照してください。
典型的な値は以下の通り:
"$wgScript/$1"
|
セパレーター「/」による記事名を渡す |
"$wgScript?title=$1"
|
パラメーターとして記事名を渡す (古いスタイル) |
"/mypath/$1"
|
カスタムパス。「mypath」をメインスクリプトにアクセスする適切なパスに変換するために Apache のリライトルールを使用する |
スタイルシートの位置
設置されている MediaWiki インストールのために CSS がある場所への URL を設定するには $wgStylePath 変数を使用します。 $wgStyleDirectory 変数は同じ場所を指定しますが、ファイル システムにアクセスする内部スクリプトで使用されるため、ローカル ファイル システムであることにご注意ください。
アップロードの位置
アップロードディレクトリは利用者によってアップロードされたファイルが保存される場所です。$wgUploadPath 変数には URL パスを、$wgUploadDirectory にはローカルファイルシステムパスを指定します。
ロゴ
$wgLogo は、すべての MediaWiki のページに既定で左上隅に表示されるグラフィカルなロゴを指定します。
See Manual:よくある質問 for how to change the logo.
コンタクト情報
$wgEmergencyContact 変数は何か問題が発生した際に連絡するための利用者のメールアドレスです。メールアドレスは内部バグ報告を送るために使用されます。管理者として、あなたのメールアドレスをここに掲載しておきます。
$wgPasswordSender 変数は、パスワードを忘れた利用者にパスワードが送信される際に使用されるメールアドレスです。トラブルや混乱の際に、利用者がメールを送信できるメールアドレスを指定します。
データベースの設定
ページ、利用者情報や多くのものを保存するために MediaWiki はデータベース (現在は MySQL、PostgreSQL のいずれか) にアクセスする必要があります。
$wgDBserver はデータベースのホスト名を含みます。多くの場合、同じシステム上で動作しているデータベースとしては「localhost」が当てはまりますが、さまざまなインストールのために、データベースが動作しているコンピューターの十分に確認されたドメイン名を入力する必要があります。
$wgDBname は MediaWiki によって使用される データベース名 です。単独の MySQL または PostgreSQL では一つ以上のデータベースを保存することができ、一つのサーバーで多くの MediaWiki を動作させることができます。正しいデータベース名を記載して同じデータベースサーバー上の異なるウィキインストールのために異なるデータベース名を使用することを確認します。
$wgDBuser 変数と $wgDBpassword 変数はデータベースにアクセスするために MediaWiki によって使用されるログイン名とパスワードを含みます。データベースサーバー上でウィキのテーブルを操作できる適切なアクセス権を指定された利用者が所有することで確認できます。
また、LocalSettings.php
の機密情報を別のディレクトリに別のファイルとして移動する方法については、Manual:データベースパスワードを安全に保管するには も参照してください。
利用者の権限
$wgGroupPermissions は連想配列で、異なる利用者グループのためにページを作成と編集する権限を制限します。この配列において、カスタムパーミッションレベルが作成され、異なる利用者グループのためにパーミッションレベルが設定されます。異なるパーミッションと利用可能な利用者グループについては Help:User rights でより詳細な情報を見ることができます。
大文字リンクの強制
既定では、小文字 (ラテン文字) でページ名は始まらず、最初の文字を大文字に変換されます。リンクターゲット、含まれるページ、画像またはカテゴリは小文字で始まる名前で指定され、実際のターゲットなどは大文字で始まるページに対応します。
代替的にはページ名は大文字、数字に加えて、小文字で始めることができます。そのためには $wgCapitalLinks 変数を調整しなければなりません。false に設定することで小文字を許可し、true は既定の振る舞いをします。
下位ページの有効化
LocalSettings.php
において、$wgNamespacesWithSubpages 変数を使用することで名前空間ごとに下位ページを有効にします。例えばメインの名前空間で下位ページを有効にする場合:
$wgNamespacesWithSubpages[NS_MAIN] = 1;
画像のアップロード
MediaWiki システムにファイルをアップロードすることを利用者に許可する前に、この機能を有効にしなければなりません。アップロードディレクトリが適切に設定され、Apache ウェブサーバープロセスによって書き込み可能でなければなりません。$wgEnableUploads 変数を true に設定することでウェブユーザーインターフェイスでアップロードすることが可能になります。
以下のコードは LocalSettings.php
の設定例で includes/DefaultSettings.php から由来しています:
$wgUploadPath = "$wgScriptPath/uploads"; ## Wiki 1.5 defaults to /images, but allows more than just images
$wgUploadDirectory = "$IP/uploads"; ## Wiki 1.5 defaults to /images, but allows more than just images
## To enable image uploads, make sure the above '$wgUploadPath' directory is writable by Apache User or group.
## ''(i.e. chmod og+w uploads images)'' then the following should be true:
$wgEnableUploads = true;
$wgUseImageMagick = true;
$wgImageMagickConvertCommand = "/usr/bin/convert";
## If you want to use image uploads under safe mode, create the directories
## images/archive, images/thumb and images/temp, then configure them all writable. Afterwards, uncomment this, if it's not already done:
$wgHashedUploadDirectory = false;
動作中に素早く画像をリサイズできるようにしてサムネイルをサポートしたい場合、MediaWiki には有効なImageMagickが必要です。
ImageMagick をシステムにインストールしてテストが済んだら $wgUseImageMagick に true を設定します。
$wgImageMagickConvertCommand が convert
コマンドのインストールの適切な位置を指定し、コマンドがウェブ サーバーのプロセスによって実行可能であること、$wgMaxShellMemory が十分に大きいことを確認します。
詳細な情報と障害探索の方法は Manual:Image administration#Image thumbnailing を参照してください。
また、利用可能な拡張子の修正を行いたい場合、次のように $wgFileExtensions 内に設定します:
$wgFileExtensions = [ 'png', 'jpg', 'jpeg', 'ogg', 'doc', 'xls', 'ppt', 'mp3', 'sxc', 'pdf' ];
ImageMagick で次のようなエラーメッセージが表示された場合。
Fatal error: mime_magic could not be initialized, magic file is not available in includes/MimeMagic.php on line 506
さらに以下の行を LocalSettings.php
に追加してみてください:
$wgMimeDetectorCommand = "file -bi";
インターウィキのサポート
インターウィキ サポートは MediaWiki に組み込まれていますが、内部リンクのために使用される接頭辞を設定する必要があります。
この接頭辞は通常 $wgSitename
と同じですが、変更する場合、$wgLocalInterwikis
変数をご希望の名前に設定します。
ユーザーインターフェイスの言語
MediaWikiは様々なローカライズされたユーザーインターフェイスの言語を利用できます。英語ではない言語でウィキを運営する場合、$wgLanguageCode
を適切な言語コードに設定します (例えば、ドイツ語なら「de」、スペイン語なら「es」、など)
languages/i18n ディレクトリ内にファイルがあれば、あらゆる言語を使用できます。例えば es.json
がある場合は、スペイン語に「"es"
」を使用できます。先頭が大文字の「"Es"
」を使用しないでください。動作するように見えるかもしれませんが、すべてのテキストが翻訳されているわけではありません。
maintenance
に移動して php rebuildMessages.php --rebuild
を入力してください。 Windows環境では恐らく、PHPフォルダーが PATH
環境変数に含まれていないので、php をプログラムパスの前に付け足す必要があるでしょう。すべての言語に対応しているわけではありません。 TranslateWiki の翻訳統計を参照して、どの言語に対応しているか、そしてどの程度の翻訳が行われているかの最新の一覧を参照してください。 その一覧は MediaWiki コアの現在の状態を反映しており、ご利用のバージョンによっては違いがあるかもしれません。
サイトのための著作権の設定
- $wgRightsPage はウィキ上のページで該当する著作権を表示します。通常は Project:著作権 です。
- $wgRightsUrl はライセンスの全内容を記述したページです。(例えば GNU FDL の場合は、
http://www.gnu.org/licenses/fdl.html
になります) - $wgRightsText は "Content is available under" に続くフッターに含まれるテキストです。
$wgRightsPage
に指定されたページにリンクします。 - $wgRightsIcon はフッターの左に設置される画像の URL です。
$wgRightsPage
が空ではない場合、著作権/ライセンス内のリンクはサイト上のそのページにリンクします。$wgRightsPage
が空の場合は代わりに $wgRightsUrl
にリンクします。サイトの著作権宣言を修正するために以下の行を LocalSettings.php
に追加します:
$wgRightsPage = "YourWiki:Copyright";
$wgRightsText = "copyright YourWiki";
後で適切なメッセージを表示するために MediaWiki:Copyright-footer を編集します。"$1"
を使用して著作権ページへのリンクの位置を示します。
例: クリエイティブ・コモンズライセンスを設定します
クリエイティブコモンズライセンスを設定するために以下のように行います:
- ライセンスを選択する: http://creativecommons.org/choose/
- * 返されたHTMLコードを検査する。例:
<a rel="license" href="http://creativecommons.org/licenses/by-nc-sa/3.0/">
<img alt="Creative Commons License" border="0" src="http://creativecommons.org/images/public/somerights30.png" />
</a>
This work is licensed under a
<a rel="license" href="http://creativecommons.org/licenses/by-nc-sa/3.0/">
Creative Commons Attribution-NonCommercial-ShareAlike 3.0 License</a>.
$wgRightsURL
のために、最初のアンカーから href 情報を入力します:
$wgRightsUrl = "http://creativecommons.org/licenses/by-nc-sa/3.0/";
$wgRightsText
のために 2 番目のアンカーからテキストを入力する(文法的に正しいバージョンであるために "a" をウィキ変数に追加します)
$wgRightsText = "a Creative Commons Attribution-NonCommercial-ShareAlike 3.0 License";
$wgRightsIcon
のために最初のアンカーの img リンクからソースの情報を入力します。Crative Commons サイトからあなたのサイトにバッジをコピーしたい場合は以下のコードを追加します。
$wgRightsIcon = "http://creativecommons.org/images/public/somerights30.png";
カスタムの名前空間
$ExtraNamespaces 配列を宣言して $wgExtraNamespaces と $wgNamespacesWithSubpages 配列を修正すると、MediaWiki インストレーションに名前空間を追加できます。また $wgNamespaceAliases 配列を宣言すると名前空間の別名を追加できます。 同じ名前空間で既に命名したページ、例えば「Technical:Support」というページがあるのに「Technical:」という名前空間を作成すると、そのページは消え、そればかりか Special:Allpages から除去できなくなることに留意が必要です。 これを修正するにはまず名前空間を削除、「Technical:Support」をメインの名前空間の「Support」に移動させてリダイレクトを削除します。次に名前空間を再び作成して「Technical:Support」に戻します。 詳細な情報はカスタム名前空間 をご覧ください。
外装
サイトの既定の外装は $wgDefaultSkin 変数で修正できます。
関連項目
- LocalSettingsGenerator.php インストール中に
LocalSettings.php
の初期のコンテンツを作成するソースコード。 - ウィキファミリーで同じ LocalSettings.php を共有できます。
- Manual:データベースパスワードを安全に保管するには - データベースパスワードと
LocalSettings.php
ファイルを安全に保管する方法について。