Windows 10 に導入した VMWare の Cent OS 7.2 に MediaWiki をインストール
実現する機能
メディアウィッキー(MediaWiki)は、学習ノートとして使っています。問題は学習が進んでいないことなので、ノートはほとんど白紙の状態ですが。
さて、以下でインストール手順をご紹介します。
事前準備
リポジトリ導入(EPEL,RPMforge,nux-dextop)と
CentOS 7.0 でWebサーバー構築・公開(Apache)と
CentOS 7.0 でデータベースサーバーの構築(MariaDB)と
Windows10 PCにFireFTPの導入が終わっていること
インストール方法
(1)ダウンロードURLの確認とコピー
RLoginを起動してCentOSサーバーに接続し、GNOME端末を起動させる。MediaWikiのダウンロード・サイトに移動して最新版を確認。赤枠1の「ダウンロード」を右クリックして、表示される一覧から赤枠2の「リンクのURLをコピー」を(左)クリックし、URLをコピーしておく(以下のすべての画像はクリックすると拡大表示)
(2)ダウンロードと展開・移動
下記文字の黄色は入力するコマンド(コピペでGnome端末に貼り付ける方法が簡単)。入力後は必ず「Enter」キーを押す、赤色は入力内容(コピペでGnome端末に貼り付ける方法が簡単)、緑は説明書き、白は自動で表示される部分である。GNOME端末でviコマンドを使う方法についてはこちらを参照
Last login: Sat Nov 5 22:21:57 2016 from 192.168.24.242 [tu@ufuso ~]$ su - ← ユーザーをrootに変更 パスワード: ← rootユーザーのパスワードを入力(表示はされない) 最終ログイン: 2016/11/06 (日) 11:48:55 JST日時 pts/0 [root@ufuso ~]# setenforce 0 ← SELinuxを一時停止してインストールを可能にする [root@ufuso ~]# getenforce ← SELinuxの一時停止を確認 Permissive ← 一時停止 [root@ufuso ~]# wget https://releases.wikimedia.org/mediawiki/1.27/mediawiki-1.27 .1.tar.gz ← wget入力後にコピーしておいたURLを貼り付けてダウンロード `mediawiki-1.27.1.tar.gz' に保存中 100%[=======================================>] 31,504,507 2.68MB/s 時間 16s 2016-11-06 13:00:59 (1.93 MB/s) - `mediawiki-1.27.1.tar.gz' へ保存完了 [31504507/31504507] ← ダウンロード完了 [root@ufuso ~]# tar zxvf mediawiki-1.27.1.tar.gz ← MediaWikiの展開(解凍) mediawiki-1.27.1/ ・・・ ・・・ mediawiki-1.27.1/vendor/zordius/lightncandy/tests/test3.tmpl mediawiki-1.27.1/vendor/zordius/lightncandy/UPGRADE.md mediawiki-1.27.1/wiki.phtml [root@ufuso ~]# mkdir /var/www/html/mwiki ← mediawiki-1.27.1フォルダの中身を /var/www/html/mwikiという名のフォルダ内に移動(mwikiは例示なので、自由に変更のこと) [root@ufuso ~]# mv mediawiki-1.27.1/ /var/www/html/mwiki ← mediawiki-1.27.1フォ ルダの中身を/var/www/html/mwikiという名のフォルダ内に移動(mwikiは例示) [root@ufuso ~]# chown -R tu:apache /var/www/html/mwiki ← mwikiフォルダの 所有者を自分(tuは自分のユーザー名の例示)に、グループをapacheに変更 [root@ufuso ~]# chmod 777 /var/www/html/mwiki ← mwikiフォルダに書込み権限を設定 [root@ufuso ~]# rm -f mediawiki-1.27.1.tar.gz ← 展開後は不要なのでダウンロード ファイルを削除 |
(3)データベースの作成
[root@ufuso ~]# mysql -u root -p ← MariaDBへrootでログイン Enter password: ← MariaDBのrootパスワード応答(パスワードは表示されない) Welcome to the MariaDB monitor. Commands end with ; or \g. Your MariaDB connection id is 12058 Server version: 5.5.50-MariaDB MariaDB Server Copyright (c) 2000, 2016, Oracle, MariaDB Corporation Ab and others. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. MariaDB [(none)]> create database mwiki; ← 「mwiki」という名のデータベース作成 Query OK, 1 row affected (0.10 sec) MariaDB [(none)]> grant all privileges on mwiki.* to ufuso@localhost identified by 'pass'; ← 「mwiki」という名のデータベースを読み書きできるユーザー「ufuso」をパス ワード「pass」で作成。「mwiki」、「ufuso」、「pass」は例示 Query OK, 0 rows affected (0.35 sec) MariaDB [(none)]> exit ← MariaDBからログアウト Bye |
(4)必要なソフトの追加
[root@ufuso ~]# yum -y install php php-mbstring php-pear php-xml ← MediaWikiの インストールに最低必要なもの * updates: ftp.iij.ad.jp パッケージ php-7.0.12-2.el7.remi.x86_64 はインストール済みか最新バージョンです パッケージ php-mbstring-7.0.12-2.el7.remi.x86_64 はインストール済みか最新バージョンです パッケージ 1:php-pear-1.10.1-7.el7.remi.noarch はインストール済みか最新バージョンです パッケージ php-xml-7.0.12-2.el7.remi.x86_64 はインストール済みか最新バージョンで す 何もしません ※例示ではphp7を導入しているため、レポジトリをインストールするならコマンドは下記 rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-7.rpm php7のインストールコマンドは下記のとおり yum -y install --enablerepo=remi,remi-php70 php-xxxなどと入力 [root@ufuso ~]# yum -y install gcc-c++ php-devel httpd-devel icu libicu-devel ← intlのインストールに必要なソフトを入れる インストール: gcc-c++.x86_64 0:4.8.5-4.el7 httpd-devel.x86_64 0:2.4.6-40.el7.centos.4 icu.x86_64 0:50.1.2-15.el7 libicu-devel.x86_64 0:50.1.2-15.el7 依存性関連をインストールしました: apr-devel.x86_64 0:1.4.8-3.el7 apr-util-devel.x86_64 0:1.5.2-6.el7 cyrus-sasl-devel.x86_64 0:2.1.26-20.el7_2 libdb-devel.x86_64 0:5.3.21-19.el7 libicu.x86_64 0:50.1.2-15.el7 libstdc++-devel.x86_64 0:4.8.5-4.el7 openldap-devel.x86_64 0:2.4.40-9.el7_2 完了しました! [root@ufuso ~]# yum -y install php-intl ← intlのインストール インストール: php-intl.x86_64 0:7.0.12-2.el7.remi 完了しました! [root@ufuso ~]# yum -y install php-pecl-apcu ← php-pecl-apcuをインストール インストール: php-pecl-apcu.x86_64 0:5.1.7-1.el7.remi.7.0 依存性関連をインストールしました: php-pecl-apcu-bc.x86_64 0:1.0.3-1.el7.remi.7.0 完了しました! [root@ufuso ~]# yum -y install ImageMagick ImageMagick-devel ← ImageMagickをインストール インストール: ImageMagick.x86_64 0:6.7.8.9-15.el7_2 ImageMagick-devel.x86_64 0:6.7.8.9-15.el7_2 依存性関連をインストールしました: OpenEXR-libs.x86_64 0:1.7.1-7.el7 bzip2-devel.x86_64 0:1.0.6-13.el7 cairo.x86_64 0:1.14.2-1.el7 ghostscript.x86_64 0:9.07-18.el7 ghostscript-devel.x86_64 0:9.07-18.el7 ghostscript-fonts.noarch 0:5.50-32.el7 graphite2.x86_64 0:1.3.6-1.el7_2 harfbuzz.x86_64 0:0.9.36-1.el7 ilmbase.x86_64 0:1.0.3-7.el7 jasper-devel.x86_64 0:1.900.1-29.el7 lcms2.x86_64 0:2.6-2.el7 libICE-devel.x86_64 0:1.0.9-2.el7 libSM-devel.x86_64 0:1.2.2-2.el7 libXdamage.x86_64 0:1.1.4-4.1.el7 libXext-devel.x86_64 0:1.3.3-3.el7 libXfixes.x86_64 0:5.0.1-2.1.el7 libXfont.x86_64 0:1.5.1-2.el7 libXft.x86_64 0:2.3.2-2.el7 libXrender.x86_64 0:0.9.8-2.1.el7 libXt-devel.x86_64 0:1.1.4-6.1.el7 libXxf86vm.x86_64 0:1.1.3-2.1.el7 libfontenc.x86_64 0:1.1.2-3.el7 librsvg2.x86_64 0:2.39.0-1.el7 libthai.x86_64 0:0.1.14-9.el7 libtiff-devel.x86_64 0:4.0.3-25.el7_2 libwmf-lite.x86_64 0:0.2.8.4-41.el7_1 libxshmfence.x86_64 0:1.2-1.el7 mesa-libEGL.x86_64 0:10.6.5-3.20150824.el7 mesa-libGL.x86_64 0:10.6.5-3.20150824.el7 mesa-libgbm.x86_64 0:10.6.5-3.20150824.el7 mesa-libglapi.x86_64 0:10.6.5-3.20150824.el7 pango.x86_64 0:1.36.8-2.el7 pixman.x86_64 0:0.32.6-3.el7 poppler-data.noarch 0:0.4.6-3.el7 urw-fonts.noarch 0:2.4-16.el7 xorg-x11-font-utils.x86_64 1:7.5-20.el7 完了しました! [root@ufuso tu]# yum -y install git ← gitのインストール インストール: git.x86_64 0:1.8.3.1-6.el7_2.1 依存性関連をインストールしました: libgnome-keyring.x86_64 0:3.8.0-3.el7 perl-Error.noarch 1:0.17020-2.el7 perl-Git.noarch 0:1.8.3.1-6.el7_2.1 perl-TermReadKey.x86_64 0:2.30-20.el7 完了しました! [root@ufuso ~]# vi /var/www/html/mwiki/images/.htaccess ← 脆弱性回避のために .htaccessファイルの編集 # Protect against bug 28235 <IfModule rewrite_module> RewriteEngine On RewriteCond %{QUERY_STRING} \.[^\\/:*?\x22<>|%]+(#|\?|$) [nocase] RewriteRule . - [forbidden] </IfModule> <Directory> # Ignore .htaccess files AllowOverride None # Serve HTML as plaintext, don't execute SHTML AddType text/plain .html .htm .shtml .php # Don't run arbitrary PHP code. php_admin_flag engine off # If you've other scripting languages, disable them too. </Directory> ← 追記 [root@ufuso ~]# systemctl restart httpd ← WEBサーバー再起動 |
(5)インストール
1.MediaWikiをインストールしたhttp://yoursite/ mwiki/にアクセスし、赤枠をクリックして次に進む(画像はクリックすると拡大。以下同じ)
2.言語が日本語であることを確認し、赤枠の「続行」をクリック
3.赤枠1に緑色の「インストールできます」の表示があれば、赤枠2の「続行」ボタンをクリック
4.上記(3)で設定したとおりにデータベース項目を赤枠1、2、3に入力し、赤枠4の「続行」をクリック
5.赤枠1の「UTF-8」に●を入れ、赤枠2の「続行」をクリック
6.赤枠1にサイト名、赤枠2に管理者ユーザーとパスワードを登録し
7.赤枠1にメールアドレス、赤枠2でひとつ選んで赤枠3の「続行」をクリック
9.インストールが完了するとポップアップ画面が表示されるので、赤枠1の「ファイルを保存する」を選んで赤枠2の「OK」をクリック
(6)LocalSettings.phpの移動処理
1.Firefoxを起動させ、赤枠1の「ツール」をクリックし、表示される赤枠2の「Web開発」をクリック。表示される赤枠3の「FireFTP」をクリック
3.赤枠1の「表示名」欄には適当なアカウント名を入力して「ホスト」欄にはサーバーのURLを入力し、赤枠2にはサーバーにログインできるのユーザー名とパスワードを入力して、赤枠3の「OK」をクリック
4.赤枠の「接続」をクリックしてFireFTPを起動し、Windows10 PCと CentOS7 PC間でデータのやり取りができるようにする
5.例示として、MediaWikiをインストールする際に作成してWindows10 PCにダウンロードした「LocalSettings.php」をCentOS7 PCにコピーしてみる。赤枠1の「Downloads」フォルダをクリックし、表示される赤枠2の「LocalSettings.php」をクリックして、コピーするファイルを指定
6.赤枠1の「LocalSettings.php」に色帯がついているのを確認し、赤枠2の「mwiki」をクリックしてMediaWikiフォルダを開き、赤枠3の「⇒」をクリックして「LocalSettings.php」を「mwiki」フォルダ内にコピーする
7.「mwiki」フォルダ内に赤枠の「LocalSettings.php」コピーされていることを確認
8.赤枠1の「LocalSettings.php」がコピーされたことを確認できたら、赤枠2の「切断」をクリックして終了
(7)終了処理(SELinuxを有効にしている場合のみ必要)
[root@ufuso ~]# semanage fcontext -a -t httpd_sys_content_t "/var/www/html/mwiki(/.*)?" ← mwikiフォルダにアクセス権限を与える [root@ufuso ~]# restorecon -R -v /var/www/html/mwiki ← mwikiフォルダのアクセス権変更を反映させる [root@ufuso ~]# setenforce 1 ← SELinuxを有効にする [root@ufuso ~]# getenforce ← 有効の確認 Enforcing ← 有効を確認 |
13.トップ画面が表示されたらインストールは成功。赤枠内の「ログイン」をクリック
14.赤枠内に作成した管理者名とパスワードを入力して「ログイン」ボタンをクリック
14-1.ユーザー登録のボタンを消す処理
[root@ufuso ~]# vi /var/www/html/mwiki/LocalSettings.php ← LocalSettings.php ファイルを開いて編集 # End of automatically generated settings. # Add more configuration options below. $wgGroupPermissions['*']['createaccount'] = false; ← 最下行に追記。ユーザー 登録をできない設定にする [root@ufuso ~]# systemctl restart httpd ← WEBサーバー再起動 |