オンラインでのお打ち合わせが可能です。

Blog

VagrantにCentOS7&PHP7のLAMP環境を構築する

php7
こんにちわ。最近カメラというアクティブな趣味を見つけました山王です。

今回は爆速と噂のPHP7の環境を構築したお話です。
PHP7はPHP5の倍速いらしいです。
今回のサーバー構成
CentOS7+PHP7+Apace2.4+MySQL5.6となります。
今回インストールしたPHP7はVersion 7.0.0RC7というバージョンです。
正式なリリースはいつなんでしょう??

目次

  1. Vagrantの起動
  2. ssh接続
  3. apacheインストール
  4. MySQLインストール
  5. PHP7インストール
  6. 表示確認
  7. まとめ

Vagrantの起動

VagrantとVirtualboxのインストールをします。
ここはググればたくさん出るので割愛します。
ユニオンネットの記事でもあります。
仮想環境構築ツール「Vagrant」でローカル開発環境を構築してみた

構築ディレクトリ作成

mkdir php7
cd php7

Vagrantfile作成

# centos7boxファイルダウンロード
vagrant box add centos7 https://github.com/holms/vagrant-centos7-box/releases/download/7.1.1503.001/CentOS-7.1.1503-x86_64-netboot.box
# Vagrantfile作成
vagrant init centos7

生成されたVagrantfileの29行目のコメントアウトを外します。
config.vm.network “private_network”, ip: “192.168.33.10”

サーバー起動

vagrant up

 

ssh接続

sshで接続

vagrant ssh

Windowsの方はTeraTermとかで接続してください。
Macは普通にvagrant sshでいけたんですけど
Vagrant1.7から?ですかねkey認証の方法変わりましたよね。
Windowsの方ならわかると思うんですが 、最初接続できなくて戸惑いましたw
さて脱線しましたが接続できましたら環境構築行っていきます。

apacheインストール

# ルートでログイン
sudo su
# apacheインストール
yum -y install httpd

# firewalld停止
systemctl stop firewalld

# 自動起動停止
systemctl disable firewalld

# apache起動
systemctl start httpd

# apache自動起動
systemctl enable httpd.service

MySQLインストール

yum -y install http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm
yum -y install mysql-community-server

#MySQL起動
systemctl start mysqld.service

#MySQL自動起動
systemctl enable mysqld.service

PHPインストール

# yumのアップデートと必要なパッケージのインストール
yum -y update
yum -y install yum-plugin-priorities
yum -y groupinstall "Base" "Development tools" "Japanese Support"

# EPELリポジトリ追加
yum -y install epel-release

# Remiリポジトリ追加
rpm -ivh http://rpms.famillecollet.com/enterprise/remi-release-7.rpm

# RPMforgeリポジトリ追加
yum -y install http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el7.rf.x86_64.rpm

# PHPインストール
yum --enablerepo=remi-php70 -y install php php-mbstring php-pear php-fpm php-pdo php-intl

# phpMyAdminのインストール
yum --enablerepo=remi-php70 -y install phpMyAdmin php-mcrypt

phpMyAdminの設定ファイル変更

vi /etc/httpd/conf.d/phpMyAdmin.conf

<Directory /usr/share/phpMyAdmin/>
   <IfModule mod_authz_core.c>
     # Apache 2.4
     <RequireAny>
       Require ip 127.0.0.1
       Require ip ::1
     </RequireAny>
     AllowOverride all #ここを追加
     Require all granted #ここを追加
   </IfModule>
   <IfModule !mod_authz_core.c>
     Order Deny,Allow     
     Allow from All     
   </IfModule>
</Directory>

vi /etc/phpMyAdmin/config.inc.php

$cfg['blowfish_secret'] = '任意のパスフレーズ';
$cfg['Servers'][$i]['AllowNoPassword'] = TRUE; #FALSEからTRUEに

php.ini変更

vi /etc/php.ini

# エラー表示&タイムゾーン&デフォルト言語の設定
display_errors = On
date.timezone = "Asia/Tokyo"
mbstring.language = Japanese

# apache再起動
systemctl restart httpd

 

表示確認

シンボリックリンクの変更

#/var/www/html フォルダを削除
rm -rf /var/www/html

# /vagrantにリンク
ln -fs /vagrant /var/www/html

php7ディレクトリでindex.phpを作成

<?php echo phpinfo(); ?>

phpinfoが表示されて変更が反映されてればおkです。

まとめ

以上でPHP7のLAMP環境構築完了です。
PHP7は5の後方互換もちゃんとしてるらしいんですが廃止になった関数とかもあるみたいです。
僕は普段WordPressでWEBサイトを制作することが多いのですが動かなかったプラグインもチラホラありました。
うーん・・・つらたん

untenna
サポートサイト
ミトネデザイン