LoginSignup
78

More than 5 years have passed since last update.

EC2にnginx+php(php-fpm socket)環境を最速で構築

Last updated at Posted at 2015-06-06

EC2上インスタンスにnginxとPHP5.6を入れて、PHPの実行環境を最速で作成する方法です。

ゴール

  • Amazon Linux AMIの標準リポジトリのnginxとphp5.6, php-fpm環境を構築します
  • ブラウザからPHPスクリプトにアクセスできる状態になります
  • nginxとphp-fpm間のやりとりをUnixドメインソケットに変更します
  • ドキュメントルートは、/var/www/defaultにします

EC2 インスタンスを起動

Amazon Linux AMI 2015.03 (HVM), SSD Volume Type でインスタンスを建てる。普通に立てればOK。
最後に外から見えるかみたい人は、Elastic-IPかパブリックIPを振り、セキュリティグループの設定でTCP80番を開けておきます。

インストール

nginx, php56 , php56-fpmをインストール

sudo yum install nginx -y
sudo yum install php56 php56-fpm -y

設定ファイルの変更

まずはnginxの設定ファイルの変更から。

/etc/nginx/nginx.conf

+ server_tokens off;

  http {
-   index index.html index.htm;
+   index index.php
      server {
-       root /usr/share/nginx/html; 
+       root /var/www/default;

-       #location ~ \.php$ {
-       #    root           html;
-       #    fastcgi_pass   127.0.0.1:9000;
-       #    fastcgi_index  index.php;
-       #    fastcgi_param  SCRIPT_FILENAME/scripts$fastcgi_script_name;
-       #    include        fastcgi_params;
-       #}
+       location ~ \.php$ {
+       root           /var/www/default;
+       fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;
+       fastcgi_index  index.php;
+       fastcgi_param  SCRIPT_FILENAME /var/www/default$fastcgi_script_name;
+       include        fastcgi_params;
+     }

次にphp-fpmの設定。

/etc/php-fpm-5.6.d/www.conf
- user = apache
+ user = nginx

- group = apache
+ group = nginx

-   listen = 127.0.0.1:9000
+   listen =  /var/run/php-fpm/php-fpm.sock

-   ;listen.owner = nobody
-   ;listen.group = nobody
+   listen.owner = nginx  
+   listen.group = nginx

起動と自動起動設定

nginx, phpをそれぞれ起動します。

sudo service nginx start
sudo chkconfig nginx on
sudo chkconfig --list nginx

sudo service php-fpm start
sudo chkconfig php-fpm on
sudo chkconfig --list php-fpm

表示確認

# 適当なファイル名に変更
echo "<?php phpinfo();" >> /var/www/default/hogehogehoge.php

ブラウザから以下にアクセスして、phpinfoが表示されればOKです。
このファイルは確認したらすぐに消しましょう。

http://[サーバーのIPアドレス]/hogehogehoge.php

参考

AmazonLinuxにnginx+PHP5.6+PHP-fpm+PHP-redis環境を作る - Qiita

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
78