読者です 読者をやめる 読者になる 読者になる

Around the modern stone age.

近年はシリコン(石)の半導体から進化した便利なもので溢れる時代。そんな気になった事や試した事など徒然と記す。

スポンサーリンク

【Ubuntu 16.04 LTS Server】MediaWikiサーバをインストール

Ubuntu Linux MediaWiki MySQL Apache

LAMP環境(Linux + Apache + MySQL + PHP)が揃ったので、MediaWiki(Wikiサーバ)を使えるようにする。尚、LAMP環境のインストールについては、関連記事を参照。

データのバックアップや流用などを考えて、MySQLのDBを使うWikiを探していた。出来れば、Markdownで記述できるのがベストなのだが良さそうなのが見つからなかったのと、ウィキペディアの実績を考えてMediaWikiを選択。(もしかしたら、プラグインとかでMarkdown記法も使えるのかも?)

MediaWikiの取得

任意のフォルダで下記コマンドを実行。MediaWikiのソース一式を取得し、/usr/share/mediawiki/にコピー。

$ wget https://releases.wikimedia.org/mediawiki/1.28/mediawiki-1.28.0.tar.gz
$ tar xvf mediawiki-1.28.0.tar.gz
$ sudo mkdir /usr/share/mediawiki
$ sudo cp -rf mediawiki-1.28.0/* /usr/share/mediawiki/

MySQLの設定

mediawikiのDBを作成、ユーザはphpmyadminを利用。

$ mysql -u root -p

mysql> create database mediawiki;
Query OK, 1 row affected (0.08 sec)

mysql> GRANT ALL PRIVILEGES ON mediawiki.* TO 'phpmyadmin'@'localhost';
Query OK, 0 rows affected (0.02 sec)

mysql> flush privileges;
Query OK, 0 rows affected (0.14 sec)

mysql> exit
Bye

PHPの設定

php.iniファイルを編集。

$ sudo nano /etc/php/7.0/apache2/php.ini

下記箇所のアップロードサイズの制限を20Mに変更。

upload_max_filesize = 20M

Apacheの設定

下記の/etc/apache2/conf-available/mediawiki.confファイルを作成。

$ sudo nano /etc/apache2/conf-available/mediawiki.conf
Alias /wiki /usr/share/mediawiki
<Directory /usr/share/mediawiki>
    Options FollowSymLinks
    AllowOverride Limit Options FileInfo
    DirectoryIndex index.php
    Order allow,deny
    Allow from all
</Directory>

下記コマンドで、サイトの有効化とApacheの再起動。

$ sudo a2enconf mediawiki
$ sudo service apache2 restart

MediaWikiサイトのURLは、http://[サーバIP]/wiki/となる。

MediaWikiの初期設定

Webブラウザから下記URLにアクセス

http://[サーバIP]/wiki/

f:id:jr4qpv:20170201220157p:plain

上記画面が表示されるので、set up the wikiを押す。

f:id:jr4qpv:20170201220356p:plain

続行する。

f:id:jr4qpv:20170202120818p:plain

MySQL設定情報の入力。

f:id:jr4qpv:20170201220750p:plain

データベースの設定、「InnoDB」と「UTF-8」を選択。

f:id:jr4qpv:20170201221007p:plain

設定が完了したら上記画面になるので、「LocalSettings.phpをダウンロード」を押す。
ここで、LocalSettings.phpのファイルがダウンロードされるので、そのファイルをサーバに転送。(SSHが使える環境ならscpコマンドでファイルコピー出来る)

上記転送したファイルを、MediaWikiのフォルダにコピーする。

$ sudo cp LocalSettings.php /usr/share/mediawiki/

MediaWikiにアクセス

Webブラウザから下記URLにアクセス

http://[サーバIP]/wiki/

f:id:jr4qpv:20170201232147p:plain

上記画面が表示され、MediaWikiのインストール完了!

外部インターネットからアクセス

ルータの静的NAT設定は必要ではあるが、外部インターネットからMdediaWikiへのアクセスを試したら、最初アクセスできなかった。
それで調べたら、LocalSettings.phpファイルの$wgServer行をプライベートIPアドレスではなく、下記のように外部インターネットから名前解決できるURLに修正。これでOKとなった。

$wgServer = "http://hoge.aa0.netvolante.jp"

どうやらMediaWikiは、この$wgSeverが名前解決できるかチェックをしている様子。

補足

  • データベースの文字セット設定ではバイナリの方が効率がよいとヘルプに書いてあったが、日本語しか使わないつもりなのとMySQのDBに直接アクセスする事もあるかもと思いUTF-8を選択。
  • apacheでサイトを無効にするには、sudo a2disconf mediawiki

関連記事

参考

  1. Manual:Running MediaWiki on Debian or Ubuntu - MediaWiki
  2. Ubuntu 16.04 LTS : Apache2 : Wikiシステム : MediaWiki : Server World
  3. MediaWiki - Dococo wiki
  4. MediaWikiのインストール手順 – Remove Before Flight
  5. サイト管理者用情報 for MediaWiki - OasisHalfmoon
  6. XAMPP1.81が社内のLANに公開できない - QA@IT

MediaWiki使いこなしガイド―あなたもWikipediaが作れる!

MediaWiki使いこなしガイド―あなたもWikipediaが作れる!