「MediaWiki」の版間の差分
Notion-MW タグ: 差し戻し済み |
Notion-MW |
||
(同じ利用者による、間の7版が非表示) | |||
7行目: | 7行目: | ||
データベース(MySQL)と(CGI版の)phpが使えることを確認しておく。スターサーバーフリー(php+mysql)では動いた。 | データベース(MySQL)と(CGI版の)phpが使えることを確認しておく。スターサーバーフリー(php+mysql)では動いた。 | ||
SSHが使えないような低価格帯のレンタルサーバーのプランの中でも、PHPでexecなどの機能を使えば事実上任意コマンドが実行できるものと、それらの機能が制限されているサーバーがある。後者でもMediaWikiは一通り動くが、一部機能が動作しない場合もあるのであまりお勧めしない(特に他サーバー移行で手こずるのは困る)。 | |||
==== インストール ==== | ==== インストール ==== | ||
23行目: | 23行目: | ||
データベース(phpMyAdmin)から、 | データベース(phpMyAdmin)から、 | ||
< | <syntaxhighlight lang="vb.net">UPDATE `user` SET user_password = CONCAT(':B:somesalt:', MD5(CONCAT('somesalt-', MD5('somepass')))) WHERE user_name = 'someuser'</syntaxhighlight> | ||
とする。[https://www.mediawiki.org/wiki/Topic:Rnq7yc02mg1o4j34 https://www.mediawiki.org/wiki/Topic:Rnq7yc02mg1o4j34]より。<strong>2か所あるsomesaltのところにはLocalSettings.phpの$wgDBpasswordの値を入れること。</strong> | とする。[https://www.mediawiki.org/wiki/Topic:Rnq7yc02mg1o4j34 https://www.mediawiki.org/wiki/Topic:Rnq7yc02mg1o4j34]より。<strong>2か所あるsomesaltのところにはLocalSettings.phpの$wgDBpasswordの値を入れること。</strong> | ||
37行目: | 37行目: | ||
設定が終わると<strong>LocalSettings.php</strong>が出力され、以後これで色々な設定ができるようになる。インストール後にフォルダ名を変えるときはリネームの上、LocalSettings.phpで<code>$wgScriptPath = "/mw";</code>などと変えればよい。新規ユーザー作成を許可するかどうかなどの設定もここでできるので、禁止したい場合などはこのタイミングでやっておくとよいだろう。 | 設定が終わると<strong>LocalSettings.php</strong>が出力され、以後これで色々な設定ができるようになる。インストール後にフォルダ名を変えるときはリネームの上、LocalSettings.phpで<code>$wgScriptPath = "/mw";</code>などと変えればよい。新規ユーザー作成を許可するかどうかなどの設定もここでできるので、禁止したい場合などはこのタイミングでやっておくとよいだろう。 | ||
<span id="gitからのインストール"></span> | |||
==== Gitからのインストール ==== | |||
[https://www.mediawiki.org/wiki/Download_from_Git/ja Git からのダウンロード - MediaWiki]などに書いてあるが、安定版リリースにバンドルされている拡張やスキン([https://www.mediawiki.org/wiki/Bundled_extensions_and_skins Bundled extensions and skins - MediaWiki])やvendorフォルダ(?)が無かったりして動かすのに一手間かかる。 | |||
==== その他初期設定 ==== | ==== その他初期設定 ==== | ||
55行目: | 60行目: | ||
<li><p>SyntaxHightlight</p> | <li><p>SyntaxHightlight</p> | ||
<p>Linuxのサーバーでは、<code>extensions/SyntaxHighlight_GeSHi/pygments/pygmentize</code>のパーミッションを変更して所有者に実行権限を付加(先頭の桁を7にする)。参考: [https://www.mediawiki.org/wiki/Extension:SyntaxHighlight/ja Extension:SyntaxHighlight - MediaWiki]</p></li></ul> | <p>Linuxのサーバーでは、<code>extensions/SyntaxHighlight_GeSHi/pygments/pygmentize</code>のパーミッションを変更して所有者に実行権限を付加(先頭の桁を7にする)。参考: [https://www.mediawiki.org/wiki/Extension:SyntaxHighlight/ja Extension:SyntaxHighlight - MediaWiki]</p></li></ul> | ||
== アップグレード == | |||
基本的には、 | |||
# 新しいバージョンのMediaWikiファイル一式を新しいフォルダに設置して、そこに | |||
#* LocalSettings.phpとimagesをコピー | |||
#** LocalSettings.phpは場合によって手直しが必要かも | |||
#* 自分で追加した拡張(extensions)(このサイトでいえばAutoCreateCategoryPagesとWikiSEO)やスキンなどを改めてダウンロードして追加(コピーしてきてもいいが、バージョンを更新したほうが良さそう) | |||
#* ロゴなど、その他リソースをコピー | |||
# シェル(推奨)またはmw-config(当サイトの環境ではシェルのPHPが古すぎるのでこっち)からDBの更新(ただ、バージョンの差が小さければ、既に更新前の段階で基本的に問題なくページが閲覧できる場合も多そう) | |||
という流れ。 | |||
1.のところでは、既存のMediaWikiインストールに上書きコピーするというのも一応可能で、実際これでやっている人も結構いそうだが、古いバージョンの(不要な)ファイルが残ってしまうので推奨はされていない。 | |||
<span id="スキンデザイン"></span> | |||
== スキン・デザイン == | |||
<span id="cssjs"></span> | <span id="cssjs"></span> | ||
== CSS/JS == | === CSS/JS === | ||
[https://meta.m.wikimedia.org/wiki/Help:User_style/ja Help:User style/ja - Meta] とかにある通り、デフォルトではcssを直接ページ内に書いても有効にならない。<code>wgAllowUserCss</code>をtrueにして有効にするか、MediaWiki:Common.cssを直接編集するとよい。管理がしやすいので当サイトでは後者の方法を採用した。 | [https://meta.m.wikimedia.org/wiki/Help:User_style/ja Help:User style/ja - Meta] とかにある通り、デフォルトではcssを直接ページ内に書いても有効にならない。<code>wgAllowUserCss</code>をtrueにして有効にするか、MediaWiki:Common.cssを直接編集するとよい。管理がしやすいので当サイトでは後者の方法を採用した。 | ||
68行目: | 91行目: | ||
当サイトではVectorテーマを使用しているので、MediaWiki:Vector.cssの内容も適用される。さらにVector 2022を使っているのでMediaWiki:Vector-2022.cssの内容も適用される。 | 当サイトではVectorテーマを使用しているので、MediaWiki:Vector.cssの内容も適用される。さらにVector 2022を使っているのでMediaWiki:Vector-2022.cssの内容も適用される。 | ||
設定内容としては、ja.wikipedia.orgに合わせて文字サイズを0.875emから0.944emに変更している。 | <s>設定内容としては、ja.wikipedia.orgに合わせて文字サイズを0.875emから0.944emに変更している。</s>現在は0.944→0.974に変更している。さらに、<code>vector-font-size</code>([[MediaWiki#文字サイズ|文字サイズ]]参照)関連の設定が優先される状態になっている。 | ||
=== 文字サイズ === | |||
MediaWikiの文字サイズは結構小さくて、Google検索コンソールでも評価を下げられたりすることがあり、[[MediaWiki#スキン・デザイン|CSS/JS]]の通りにサイズを手動で大きくするなどしていた。しかし、最近(2025/04)Wikipediaなどを見たら文字サイズが改善していて、さらによく見ると右側に表示(Appearance)というサイドバーがあり、非ログインユーザーでも文字サイズを3段階で変更できる(Cookieに保存される)ようになっている。 | |||
これは[https://www.mediawiki.org/wiki/Topic:Ybg9afru94numvhu The Appearance menu and new default standard font size will be available for logged-out users on Project:Village Pump/Flow]などに詳しく書いてあるが、どうやらver1.43前後からこの機能が追加されたようである。 | |||
ただし、デフォルトでは非ログインユーザーの文字サイズは3段階の一番小さいものに設定されており見づらい。このデフォルト値をLocalSettings.phpで変更する方法は多分なさそうだが、ソースコードを読むと、<code>skins/Vector/skin.json</code>の<code>"vector-font-size": 0</code>を例えば<code>1</code>に変更するとデフォルトが真ん中のサイズになることがわかる。 | |||
上記リンクには、いずれデフォルトがStandardサイズ(つまり<code>1</code>)に変更されるだろうと書いてある。そして、日本語版Wikipediaでは既にデフォルトが<code>1</code>になっている。しかし、現時点の日本語版WikipediaのMediaWIkiのバージョン([https://ja.m.wikipedia.org/wiki/Special:Version バージョン情報])である1.44.0-wmf.27 (fbabd90)(かなり新しい)では、依然として上記の設定値に<code>0</code>になっていた([https://gerrit.wikimedia.org/r/plugins/gitiles/mediawiki/skins/Vector/+/refs/heads/wmf/1.44.0-wmf.27/skin.json skin.json - mediawiki/skins/Vector - Gitiles])。日本語版Wikipediaでもソースコードにカスタマイズが入っているのか、それとも他の方法があるのかは不明。 | |||
<span id="モバイルminerva"></span> | |||
=== モバイル・minerva === | |||
[https://www.mediawiki.org/wiki/Extension:MobileFrontend/ja Extension:MobileFrontend - MediaWiki]を使うと、モバイルデバイスでアクセスした際に(デフォルトでは)minerva(<code>MinervaNeue</code>)スキンが使われるようになる。 | |||
minervaスキンだとカテゴリが表示されないが、LocalSettings.phpに<code>$wgMinervaShowCategories = [ 'base' => true ];</code>と書くことで表示されるようになる。<code>$wgMinervaShowCategoriesButton = [ 'base' => true ];</code>という情報も出てくるが、現在の最新版ではこれは効果がなかった。 | |||
== シェルアクセス == | == シェルアクセス == | ||
103行目: | 143行目: | ||
== URLを短くする == | == URLを短くする == | ||
最初の設定だとURLに<code>index.php?title=</code>のような見栄えのよくない文字列が入ってしまうが、Wikipediaのように<code>example.com/wiki/タイトル</code> | 最初の設定だとURLに<code>index.php?title=</code>のような見栄えのよくない文字列が入ってしまうが、Wikipediaのように<code>example.com/wiki/タイトル</code>のような形式が使えるように設定することもできる。[https://www.mediawiki.org/wiki/Manual:Short_URL/ja Manual:短縮URL - MediaWiki]に案内がある。そこに書いてある通り、URLに<code>?</code>が入っているのは見栄えだけでなくSEO上もあまりよくないとのこと。 | ||
注意点として、<code>index.php?title=</code>形式を短い形式に強制的にリダイレクトさせるわけではない(index.phpは単なる記事の閲覧以外にも使われるので、そのように設定するのは面倒そう)。ただ、この状態でも、記事間リンクは短いURLを使ってくれるようになる。あとはWikiSEO拡張(後述)を使うと検索エンジンにも短いURLが通知される。 | 注意点として、<code>index.php?title=</code>形式を短い形式に強制的にリダイレクトさせるわけではない(index.phpは単なる記事の閲覧以外にも使われるので、そのように設定するのは面倒そう)。ただ、この状態でも、記事間リンクは短いURLを使ってくれるようになる。あとはWikiSEO拡張(後述)を使うと検索エンジンにも短いURLが通知される。 | ||
115行目: | 155行目: | ||
例えば、まず以下のような汎用の<code>Mbox</code>というテンプレートを作り(色も引数で指定できるのがポイント)、 | 例えば、まず以下のような汎用の<code>Mbox</code>というテンプレートを作り(色も引数で指定できるのがポイント)、 | ||
<syntaxhighlight style="margin-bottom:0.2em;" lang="html"><div style="border-left: 0.4rem solid #119922" ><div style="padding-left: 10px; padding-right: 10px; border: 1px solid #222222; background-color:#FBFBFB; border-left: 0.4rem solid {{{1}}}" >{{{2}}}</div> | |||
</div></syntaxhighlight> | |||
< | |||
<div style='text-align: center;'>Template:Mbox</div> | <div style='text-align: center;'>Template:Mbox</div> | ||
これを利用して下書きのテンプレートを作っている。 | これを利用して下書きのテンプレートを作っている。 | ||
<syntaxhighlight style="margin-bottom:0.2em;" lang="vb.net">{{Mbox|#000022|このセクションの内容は未完成であり、今後の加筆が予定されています。}}</syntaxhighlight> | |||
< | |||
<div style='text-align: center;'>Template:Stub</div> | <div style='text-align: center;'>Template:Stub</div> | ||
136行目: | 172行目: | ||
==== OGP ==== | ==== OGP ==== | ||
このサイトではとりあえず大した設定はしておらず、<code>$wgWikiSeoDefaultImage = "http://turgenev0.starfree.jp/mw/logo0.png";</code>でロゴを設定し(相対パスでも表示はされるようだが、[https://webma.xscore.co.jp/study/ogp-seo/ SNSで重要なOGPとは?SEOとの関係性や設定方法を解説 -webma-]とかを見ると多分絶対パスのほうがよさそう)、各ページに<code>{{#seo:|title={{FULLPAGENAME}} - Turgenev's Wiki}}</code> | このサイトではとりあえず大した設定はしておらず、<code>$wgWikiSeoDefaultImage = "http://turgenev0.starfree.jp/mw/logo0.png";</code>でロゴを設定し(相対パスでも表示はされるようだが、[https://webma.xscore.co.jp/study/ogp-seo/ SNSで重要なOGPとは?SEOとの関係性や設定方法を解説 -webma-]とかを見ると多分絶対パスのほうがよさそう)、各ページに<code>{{#seo:|title={{FULLPAGENAME}} - Turgenev's Wiki}}</code>と書いただけで、あとは何もしていない。先ほどの「URLを短くする」をやっておくと、そちらのURLが正規URL(カノニカルURL)として扱われるっぽい。 | ||
表示を確かめたいときは[https://developers.facebook.com/tools/debug/?locale=ja_JP シェアデバッガー - Meta for Developers]を使うとよい。 | 表示を確かめたいときは[https://developers.facebook.com/tools/debug/?locale=ja_JP シェアデバッガー - Meta for Developers]を使うとよい。 |