ホーム >  Linux >  VagrantのCentOS7にPHP5.6+WordPressをインストール

投稿日:   |  最終更新日:

VagrantのCentOS7にPHP5.6+WordPressをインストール

LinuxPHPWordPress

Vagrantで作ったCentOS7環境にWordPressをインストールします。PHP5.6を使います。

PHP5.6を導入する

まず、CentOS7にPHP5.6を導入します。デフォルトの状態でPHPをyumから導入すると、PHP5.4と古いバージョンが導入されてしまいますので、Remiリポジトリを利用します。

作業の流れ

  1. EPEL・Remiのリポジトリのインストールします。
  2. PHP5.6のインストールします。
  3. apacheのインストールします。
  4. irewalld, SELinuxを停止します。
  5. phpの設定します。
  6. phpをhttpdで動かす設定します。
  7. MariaDB(MySQL)のインストールし、DataBaseを作成します。
  8. WordPressをインストールします。

準備

Vagrantでゲスト環境(仮想環境)を作ります。

①Virtualboxをインストールします。Virtualboxのインストールまでで結構です。

VirtualBoxをインストールする for Ubuntu

②Vagrantをインストールします。centos7環境を作りますので、Vagrantのインストールのみ済ませてください。

Vagrantをインストールしてテスト環境を作る for Ubuntu

ホスト環境

OS Ubuntu 16.04.1 LTS 64bit
Virtualbox 5.1
Vagrant 1.9.5

ゲスト環境

OS CentOS 7.1.1503
MariaDB 5.5.52-1.el7
Apache 2.4.6
php 5.6

Vagrantへログイン

①【ホスト環境】端末を開き、前回構築したVagrantのディレクトリまで移動します。

cd vagrant/django_apps/

②【ホスト環境】仮想マシンを起動します。

vagrant up

③【ホスト環境】ログインします。

vagrant ssh

環境の確認

VagrantでCentoOS7を立ち上げたばかりの環境を利用します。

①カーネルのバージョンを確認します。

uname -r

3.10.0-229.el7.x86_64

②rootにログインします。

sudo -i

③パッケージをアップデートします。

yum update -y

EPEL・Remiのリポジトリのインストール

標準のyumでは、PHP5.4が導入されるので、Remiリポジトリを追加してPHP5.6を導入していきます。

①Remiリポジトリの追加にはEPELリポジトリが必要なので、先にインストールします。

yum -y install epel-release

②yumコマンドの実行時にEPELのリポジトリは、自動的に使用されるようになっています。明示的に使用されるようにしたい場合は、インストールされたEPELのリポジトリの設定ファイル「/etc/yum.repos.d/epel.repo」を編集します。

vi /etc/yum.repos.d/epel.repo

以下のように編集します。

[epel]
:(略)
enabled=1
↓変更
enabled=0

yumコマンドの実行時にEPELのリポジトリを使用するには、以下のようにオプション「–enablerepo=epel」を付けて実行します。

yum –enablerepo=epel install パッケージ名

③Remiのリポジトリ設定パッケージのダウンロードを行います。

wget http://rpms.famillecollet.com/enterprise/remi-release-7.rpm

yumコマンドの実行時にremiリポジトリを使用するには、以下のようにオプション「–enablerepo=remi」を付けて実行します。

yum –enablerepo=remi パッケージ名

④Remiのリポジトリをインストールします。

rpm -Uvh remi-release-7.rpm

Remiリポジトリの場合は、デフォルトでyumコマンドの実行時にremiのリポジトリは自動的には使用されないようになっています。この設定は、Remiのリポジトリの設定ファイル「/etc/yum.repos.d/remi.repo」を見ればわかります。

vi /etc/yum.repos.d/remi.repo

[remi]
:(略)
enabled=0

⑤remi-safeというリポジトリが自動的に使用されるようになっています。こちらを明示的に使用するため、リポジトリの設定ファイル「/etc/yum.repos.d/remi-safe.repo」を、以下のように編集します。

vi /etc/yum.repos.d/remi-safe.repo 

[remi-safe]
:(略)
enabled=1
↓変更
enabled=0

PHP5.6のインストール

①導入できるPHPの詳細を確認します。

sudo yum info --enablerepo=remi,remi-php56 php

②利用するPHP Extensionの依存関係を解決しておきます。

yum -y install --enablerepo=epel,remi,remi-php56 libtidy libmcrypt

③php5.6をインストールします。

yum -y install --enablerepo=remi,remi-php56 php

④バージョンを確認します。

php -v
PHP 5.6.31 (cli) (built: Jul  6 2017 08:06:11) 
Copyright (c) 1997-2016 The PHP Group
Zend Engine v2.6.0, Copyright (c) 1998-2016 Zend Technologies

⑤次のコマンドで導入できるPHP Extensionを確認することができます。

yum search --enablerepo=remi,remi-php56 php

⑥表示された中からお好きなものを選んで、次のコマンドで導入します。

yum -y install --enablerepo=remi,remi-php56 php-opcache php-devel php-mbstring php-mcrypt php-mysqlnd php-phpunit-PHPUnit php-fpm php-gd php-pecl-xdebug php-pecl-xhprof

マルチバイト文字、MySQL、PHPUnit、PHP-fpmなどのPHP Extensionを導入してみました。

apacheのインストール

①apacheをインストールします。

yum -y install httpd

firewalld, SELinux停止

①本番用ではfirewallを使うべきですが、開発環境で確認する時は停止しています。

systemctl stop firewalld
systemctl disable firewalld
setenforce 0

②ホスト環境のブラウザから、以下のURLを入力します。vagrantのipアドレスは「192.168.33.15」とします。

http://192.168.33.15

以下のように表示されます。

phpの設定

①phpの設定のため、php.iniを編集します。

cp /etc/php.ini /etc/php.ini.org
vi /etc/php.ini

以下のように変更します。

# 以下のように変更(変更箇所のみ抜粋)
default_charset = "UTF-8" 
date.timezone = "Asia/Tokyo" 
mbstring.language = Japanese 
mbstring.internal_encoding = UTF-8 
mbstring.http_input = pass 
mbstring.http_output = pass 
mbstring.encoding_translation = Off 
mbstring.detect_order = auto 
mbstring.substitute_character = none; 
mbstring.func_overload = 0 
mbstring.strict_detection = Off 
mbstring.http_output_conv_mimetype=

phpをhttpdで動かす設定

①httpd.confを編集します。

vi /etc/httpd/conf/httpd.conf

以下のように編集します。

# 変更前 #Options Indexes FollowSymLinks
Options Includes ExecCGI FollowSymLinks

# 変更前 AllowOverride None
AllowOverride All

# 以下のようにコメントアウトする
# AddDefaultCharset UTF-8

# 以下を追記
AddType text/css .css
AddType text/javascript .js

②httpdを再起動します。

systemctl restart httpd

③php動作確認用ページ作成します。

touch /var/www/html/phpinfo.php
vi /var/www/html/phpinfo.php

以下のように記述します。

# 以下を入力、保存
<?php phpinfo(); ?>

④ホスト環境のブラウザから、以下のURLを入力します。vagrantのipアドレスは「192.168.33.15」とします。

http://192.168.33.15/phpinfo.php

MariaDB(MySQL)のインストールと設定

CentOS7から、データベースサーバがMySQLからMariaDBになります。機能はだいたい同じです。

①mariaDBをインストールします。

yum install mariadb mariadb-server mariadb-devel

②mariadb開始し、自動起動設定を行います。

systemctl start mariadb
systemctl enable mariadb

③初期設定を行います。

mysql_secure_installation

# インストール直後はrootパスワード空白なのでそのままenter
# 新しいパスワードを入力
# その後の質問(anonymousユーザ削除など)は全て「y」

④my.cnfを修正します。

vi /etc/my.cnf

以下のように記述します。

# 以下を追記
character-set-server = utf8
default_password_lifetime = 0

⑤データベースを作成します。ログインします。

mysql -u root -p
Enter password: 先ほどのパスワード

wpという名前のdatabaseを作成します。

create database wp;
grant all privileges on wp.* to wp@localhost identified by 'wp';
exit

WordPressのインストール

①wordpressをダウンロードするディレクトリへ移動します。

cd /tmp

②最新版をダウンロードし、解凍します。

wget http://ja.wordpress.org/latest-ja.tar.gz
tar zxvf latest-ja.tar.gz

③コピーしてapacheユーザとグループに権限を設定します。

cp -r wordpress /var/www/
chown -R apache.apache /var/www/wordpress

④httpd.confを修正します。ドキュメントルートをWordPressにします。

# 変更前 DocumentRoot "/var/www/html
DocumentRoot "/var/www/wordpress

# 変更前 <Directory "/var/www/html">
<Directory "/var/www/wordpress">

⑤httpdを再起動します。

systemctl restart httpd

⑥ホスト環境のブラウザから、以下のURLを入力します。

http://192.168.33.15

⑦「さあ始めましょう」をクリックします。データベース名・ユーザ名・パスワードをすべて「wp」にします。入力したら「送信」をクリックします。

⑧「インストール実行」をクリックします。

⑨WordPressへログインするためのユーザ名、パスワードを入力します。

⑩WordPressを利用できます。

トラックバック用のURL
プロフィール

名前:イワサキ ユウタ 職業:システムエンジニア、ウェブマスター、フロントエンドエンジニア 誕生:1986年生まれ 出身:静岡県 特技:ウッドベース 略歴 20

最近の投稿
人気記事
カテゴリー
広告