Windows 10 に導入した VMWare の Cent OS 7.2 に MediaWiki をインストール

実現する機能

メディアウィッキー(MediaWiki)は、学習ノートとして使っています。問題は学習が進んでいないことなので、ノートはほとんど白紙の状態ですが。
さて、以下でインストール手順をご紹介します。

事前準備

リポジトリ導入(EPEL,RPMforge,nux-dextop)

CentOS 7.0 でWebサーバー構築・公開(Apache)

CentOS 7.0 でデータベースサーバーの構築(MariaDB)

Windows10 PCにRLoginの導入

Windows10 PCにFireFTPの導入が終わっていること

インストール方法

(1)ダウンロードURLの確認とコピー

RLoginを起動してCentOSサーバーに接続し、GNOME端末を起動させる。MediaWikiのダウンロード・サイトに移動して最新版を確認。赤枠1の「ダウンロード」を右クリックして、表示される一覧から赤枠2の「リンクのURLをコピー」を(左)クリックし、URLをコピーしておく(以下のすべての画像はクリックすると拡大表示)
mwiki01

(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/にアクセスし、赤枠をクリックして次に進む(画像はクリックすると拡大。以下同じ)
mwiki-inst01

2.言語が日本語であることを確認し、赤枠の「続行」をクリック
mwiki-inst02

3.赤枠1に緑色の「インストールできます」の表示があれば、赤枠2の「続行」ボタンをクリック
mwiki-inst04

4.上記(3)で設定したとおりにデータベース項目を赤枠1、2、3に入力し、赤枠4の「続行」をクリック
mwiki-inst05

5.赤枠1の「UTF-8」に●を入れ、赤枠2の「続行」をクリック
mwiki-inst06

6.赤枠1にサイト名、赤枠2に管理者ユーザーとパスワードを登録し
mwiki-inst07

7.赤枠1にメールアドレス、赤枠2でひとつ選んで赤枠3の「続行」をクリック
mwiki-inst08

8.赤枠3の「続行」をクリック
mwiki-inst10

9.インストールが完了するとポップアップ画面が表示されるので、赤枠1の「ファイルを保存する」を選んで赤枠2の「OK」をクリック
mwiki-inst13

(6)LocalSettings.phpの移動処理
1.Firefoxを起動させ、赤枠1の「ツール」をクリックし、表示される赤枠2の「Web開発」をクリック。表示される赤枠3の「FireFTP」をクリック
fireftp04

2.表示される画面の赤枠「アカウントの作成」をクリック
fireftp05

3.赤枠1の「表示名」欄には適当なアカウント名を入力して「ホスト」欄にはサーバーのURLを入力し、赤枠2にはサーバーにログインできるのユーザー名とパスワードを入力して、赤枠3の「OK」をクリック
fireftp06

4.赤枠の「接続」をクリックしてFireFTPを起動し、Windows10 PCと CentOS7 PC間でデータのやり取りができるようにする
fireftp07

5.例示として、MediaWikiをインストールする際に作成してWindows10 PCにダウンロードした「LocalSettings.php」をCentOS7 PCにコピーしてみる。赤枠1の「Downloads」フォルダをクリックし、表示される赤枠2の「LocalSettings.php」をクリックして、コピーするファイルを指定
fireftp08

6.赤枠1の「LocalSettings.php」に色帯がついているのを確認し、赤枠2の「mwiki」をクリックしてMediaWikiフォルダを開き、赤枠3の「⇒」をクリックして「LocalSettings.php」を「mwiki」フォルダ内にコピーする
fireftp09

7.「mwiki」フォルダ内に赤枠の「LocalSettings.php」コピーされていることを確認
fireftp10

8.赤枠1の「LocalSettings.php」がコピーされたことを確認できたら、赤枠2の「切断」をクリックして終了
fireftp11

(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.トップ画面が表示されたらインストールは成功。赤枠内の「ログイン」をクリック
mwiki-inst10-1

14.赤枠内に作成した管理者名とパスワードを入力して「ログイン」ボタンをクリック
mwiki-inst11

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サーバー再起動

15.赤枠内のように表示されればログインも成功。ユーザー登録のボタンが消えているのは、14-1の処理を行ったから
mwiki-inst12
以上

コメントする

メールアドレスが公開されることはありません。 が付いている欄は必須項目です