vdeep

*

vdeepはプログラミング、IT、Web技術、ライフハックの事などなどを管理人okutaniがつぶやくブログです。月間11万PV〜。

CentOS7+nginxでPHPを利用する方法(PHP-FPM)

      2017/01/31

LINEで送る
Pocket

centos7-nginx-phpfpm
こんにちは、okutani(@okutani_t)です。前回の「CentOS7にnginxを導入&初期設定まとめ | vdeep」という記事で、CentOS7にnginxを導入して動かす、までをおこないました。

今回は、PHP-FPMを導入して「CentOS7+nginxでPHPを利用する」までを紹介します。

cakePHPやLaravelなどのフレームワークをnginxで動作させたいときは、このPHP-FPMの導入はほぼ必須です。本記事を参考にしてぜひ導入してみてください。

では、さっそくPHP-FPMを導入していきましょう。

スポンサーリンク

PHP-FPMの導入

nginx上でPHPを動かすために、PHP-FPMを導入していきましょう。

すでにPHPが導入されている場合は「$ sudo yum install php-fpm」などで導入できるかと思いますが、今回は「CentOS7にPHP5.6を導入する方法 | vdeep」の手順に従って、PHP5.6とremiリポジトリを使って導入しました。

以下コマンドでPHP5.6を導入。

$ sudo yum -y install epel-release
$ sudo rpm -ivh http://rpms.famillecollet.com/enterprise/remi-release-7.rpm
$ sudo yum -y install --enablerepo=remi,remi-php56 php

PHP-FPMを導入。PHP-FPM以外のPHP Extensionも導入しています。いる・いらないの判断は各自でおこなってみてください。

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

導入確認。

$ which php-fpm
/usr/sbin/php-fpm

これでCentOS7にPHP-FPMが導入できました。

PHP-FPMの初期設定

PHP-fmpはデフォルトではApachが使われるようになっているので、「/etc/php-fpm.d/www.conf」を次のように修正します。

$ sudo vi /etc/php-fpm.d/www.conf

user = apache #23行目あたり
↓
user = nginx

group = apache #25行目あたり
↓
group = nginx

default.confの設定

nginxの設定ファイル「/etc/nginx/conf.d/default.conf」を次のように書き換えます(もしくは「/etc/nginx/sites-avarable/」などに.confファイルを各自作成してもよい)。

server {
    listen 80;
    server_name localhost;
    root /usr/share/nginx/html;
    index index.php index.html index.htm;
location ~ \.php$ {
        root           /usr/share/nginx/html;
        fastcgi_pass   127.0.0.1:9000;
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
        include        fastcgi_params;
    }
}

上記設定では、ファイル名が.phpかどうかで分岐しています。

PHP-FPMを起動&自動起動設定。

$ sudo systemctl start php-fpm
$ sudo systemctl enable php-fpm

確認用のphpファイルを作成しておきましょう。下記のようにターミナルから作成していますが、viで作成してもOKです。

$ echo '<?php phpinfo();' | sudo tee /usr/share/nginx/html/index.php」

nginxを再起動して設定を反映。

$ sudo systemctl restart nginx

「http://localhost/index.php」にアクセスして、次のような画面が表示されれば、nginxからPHPが利用できていることが確認できます。

centos7-nginx-phpfpm

無事にCentOS7+nginxでPHPを動かすことができました。

CentOS7+nginxでPHPを利用したい方の参考になれば幸いです。

この記事が気に入ったら
いいね ! しよう

Twitter で
LINEで送る
Pocket

okutani (@okutani_t) のヒトコト
nginxでLaravelを動かしてみようと思って設定してみました。無事に動いたのでよかったです。

 - nginx, PHP

スポンサーリンク

PC用AdSense

PC用AdSense

Share
  • このエントリーをはてなブックマークに追加

  こちらの関連記事もどうぞ

WordPress投稿ページにPHP利用→ショートコードを使おう!

こんにちは、okutani(@okutani_t)です。WordPressではP …

PHPMailerを日本語で便利につかう「NPHPMailer」作ってみた

こんにちは、okutani(@okutani_t)です。PHPでメール機能を実装 …

CentOS7にnginxを導入&初期設定まとめ

こんにちは、okutani(@okutani_t)です。本記事では、高速で軽量な …

MacにHomebrewでPHP, Apache, MySQLを導入する

こんにちは、okutani(@okutani_t)です。MacにはデフォルトでP …

[WordPress]記事内で使える『連載記事一覧』機能をPHPで作ってみた

こんにちは、okutani(@okutani_t)です。ブログを書いていると、連 …

[PHP]Composerを導入&はじめてのパッケージインストールまで

こんにちは、okutani(@okutani_t)です。『Composer』とい …

PHPでSlackに「クリームたいやき食べたよ」とメッセージ送るアプリつくった

こんにちは、okutani(@okutani_t)です。先日、前の会社の同期4人 …

nginxでhttps!自己署名証明書でSSL設定してみよう

こんにちは、okutani(@okutani_t)です。本記事では、「nginx …

CentOS7+nginxでRuby on Railsを利用する(Unicorn)

こんにちは、okutaniです。前回、「CentOS7にnginxを導入&初期設 …

[PHP]自作ライブラリをComposer化&Packagistの登録方法

こんにちは、okutani(@okutani_t)です。本記事では、以前作った「 …

vdeepのトップページへ戻る画像です。風船の形をした島を女の子が掴んでいます。