OS再インストールからWordPressまで

細かい事は、必要ないのでとりあえずWordPressが動くまでを簡単に実施したいという人向けです。
VPSを借りると、まずはお決まりの儀式をしなくてはならない訳ですが、それも飽きてきたなあという人向きの記事です。モデルは、CentOS 6.x.x向けです。

まずは、何もないところから、WordPressを最小限で走らすための設定。

レポジトリの導入編

作業用のディレクトリを作成してそこで作業を進めていきます。
# cd
# mkdir install
# cd install
# yum install wget -y
# wget http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el6.rf.x86_64.rpm
# wget http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
# yum install epel-release -y
# rpm -ivh remi-release-6.rpm
# rpm -ivh rpmforge-release-0.5.3-1.el6.rf.x86_64.rpm
# yum install -y http://dev.mysql.com/get/mysql-community-release-el6-5.noarch.rpm
MySQLまでの導入

WordPressには、MySQL DBが必要なので、最新版をインストールします。
# yum install yum-utils -y
# yum-config-manager --disable mysql56-community
# yum-config-manager --enable mysql55-community
# yum install mysql mysql-devel mysql-server mysql-utilities -y

以上の操作で、MySQL DBまでのインストールが終了しましたので、その確認を行います

# rpm -qa |grep mysql
mysql-community-common-5.5.48-2.el6.x86_64
mysql-community-client-5.5.48-2.el6.x86_64
mysql-connector-python-2.1.3-1.el6.x86_64
mysql-community-server-5.5.48-2.el6.x86_64
mysql-community-devel-5.5.48-2.el6.x86_64
mysql-community-release-el6-5.noarch
mysql-community-libs-5.5.48-2.el6.x86_64
mysql-utilities-1.5.6-1.el6.noarch
mysql-community-libs-compat-5.5.48-2.el6.x86_64

MySQL version 5.5.xがインストールされていればOKです。

ここでは、まだ、MySQLdは走らせません。
必要に応じて、InnoDBを無効化したい場合には、この時点で/etc/my.cnfを編集して、以下を追記しておきます。
後からだと、InnoDBテーブルが出来てしまうので、面倒です。

my.cnfの調整

# vi /etc/my.cnf
[mysqld]
中略
skip-innodb
default-storage-engine=MyISAM
#query_cache_limit=1M
#query_cache_min_res_unit=4k
#query_cache_size=24M
#query_cache_type=1
:wq!

この段階で、MySQLdを走らせることが可能なので、初期パスワードなどの設定をします。

MySQLサーバーの初期設定

# service mysqld start
表示されるメッセージに従い、以下2つのパスワードを設定しましょう。
/usr/bin/mysqladmin -u root password 'new-password'
/usr/bin/mysqladmin -u root -h localhost.localdomain password 'new-password'
new-passwordの部分に自分の設定するパスワードを入れます。

/usr/bin/mysql_secure_installation
を必要に応じて走らせて設定しても良いですが、Local環境で使うならば、特に必要はありませんので、
このままの状態で使うことが出来ます。

# mysql -u root -p
と入力すると、パスワードを聞いてきますので、今設定したパスワードを入力すると、MySQLサーバーへの接続が
完了するハズです。
mysql> のプロンプトが出れば、OKです。
mysql> quit     <-- 一端抜けます。

とりあえず、WordPressの走行環境までをざっとインストールしてしまいましょう。

PHPのインストール

# yum install php php-mysql php-gd --enablerepo=remi-php56 -y
phpをインストールすると、httpdと、httpd-toolsも依存関係でインストールされると思います。
もしインストールされていないなら、以下を実行してインストールを完了させます。
# yum install httpd httpd-tools -y

//WordPress以外も考慮する場合は、phpのインストールを以下のようにしておくと良い//
# yum install php php-mysql php-gd php-devel php-opcache php-fpm php-apcu php-mbstring php-xml php-mcrypt --enablerepo=remi-php56
// php-opcache,php-apcu,php-fpmはphp高速化をする場合に必要 //

MySQLdとhttpdを再起動した場合にもサービスとして立ち上がる様にしておく。

# chkconfig httpd --level 345 on
# chkconfig mysqld --level 345 on

Apacheの調整
以下の2箇所を変更しておく
これをやっておかないと、パーマリンクが正しく動作しない。
# vi /etc/httpd/conf/httpd.conf
#
<Directory />
 Options FollowSymLinks
 AllowOverride All
</Directory>
#
<Directory "/var/www/html">
  Options Indexes FollowSymLinks
  AllowOverride All
</Directory>
#
:wq!

ここまでの操作で、必要な物は全て整いました。
とりあえず、Apacheを起動して、アクセス可能かどうかを確かめておきます。
自分のサーバーにhttp://domain.name/とした時に、Apacheの初期画面が表示されればOKです。

それでは、いよいよ、WordPressをインストールします。

データベースの準備

# mysql -u root -p
Enter password: 
-- 中略 --
mysql> create database user01_wp character set utf8;
Query OK, 1 row affected (0.00 sec)

一般ユーザーを作る
user01_*というワイルドカードのデータベースへのアクセスを許可するuser01というユーザーを作る。
CREATE USER 'user01'@'localhost' IDENTIFIED WITH mysql_native_password;
GRANT USAGE ON *.* TO 'user01'@'localhost';
SET PASSWORD FOR 'user01'@'localhost' = password('new-password');
GRANT ALL PRIVILEGES ON `user01\_%`.* TO 'user01'@'localhost';

これで、user01が、user01_wpへのアクセスが可能になる。

他のアドレスからのrootユーザーを許可するには
CREATE USER 'root'@'xxx.xxx.xxx.xxx' IDENTIFIED WITH mysql_native_password;
GRANT USAGE ON *.* TO 'root'@'xxx.xxx.xxx.xxx';
SET PASSWORD FOR 'root'@'xxx.xxx.xxx.xxx' = password('password');
GRANT ALL PRIVILEGES ON *.* TO 'root'@'xxx.xxx.xxx.xxx'WITH GRANT OPTION MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0;
GRANT ALLとすると管理者権限とすることができる
他のサーバー上で、phpMyAdminから、rootにアクセスする場合rootを追加する。

WordPressの最新版をインストール

最新のWordPressをダウンロードして/var/www/htmlへ配置する

# cd /var/www/html
# wget -O - 'http://ja.wordpress.org/latest-ja.tar.gz' |tar zxf -
これで、wordpressというディレクトリ内に最新版のWordPressが展開される。
このままでも良いが、html直下に移動しておく。
# cd /vae/www/html/wordpress
# mv * ../
# cd ../
# rmdir wordpress

インストールは、これで、完了しているので、後は、http://domainName.tld/ などとしてアクセスすれば、WordPressのインストール画面へと遷移する。

ここで設定するのは、先のuser01_wpへ、user01でアクセス出来るようにする。
データベース名:user01_wp
ユーザー名:user01
パスワード:new-password
データベースホスト名:localhost
テーブル接頭辞:wp_

後は適宜に。

最短コースのつもりで、仕上げてみたつもりなのだが、なんとなく、まだまだ、やることが多すぎる感があるが、上から順に実施していけば、そこそこ最新のWordPress環境が整うハズ。

後は、ここでは触れないが、php-opcache,php-apcuあたりをインストールしたり、必要に応じてphpMyAdminあたりをインストールすれば、より快適になる。

とりあえず、サーバー借りたけど、マンドクサという場合には、ある程度役に立つと思うのだが・・・

これでも、メンドクサと言う人は、インストールスクリプトを作って自動化してしまおう。