VagrantにCentOS7&PHP7のLAMP環境を構築する
こんにちわ。最近カメラというアクティブな趣味を見つけました山王です。
今回は爆速と噂のPHP7の環境を構築したお話です。
PHP7はPHP5の倍速いらしいです。
今回のサーバー構成
CentOS7+PHP7+Apace2.4+MySQL5.6となります。
今回インストールしたPHP7はVersion 7.0.0RC7というバージョンです。
正式なリリースはいつなんでしょう??
目次
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サイトを制作することが多いのですが動かなかったプラグインもチラホラありました。
うーん・・・つらたん