11
9

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

EC2+Nginx+PHP-FPMの最小限の環境設定

Last updated at Posted at 2015-10-01

AWS EC2で、Nginxを動かすまでを解説します。

確認事項

1.SSH接続
できないと、なにもできません。
ログインしておいてください

2.セキュリティグループの確認
HTTPなり、HTTPSなりで自分がアクセスできるようにしておいてください。
ELB(ロードバランサ)を利用する場合も同様です。

スクリーンショット 2015-09-30 16.56.56.png

Nginxをインストール

ユーザをrootに変更します。

$ sudo su - 

Nginxをyumからインストールします。

# yum install nginx -y

Nginx設定

成功したら、自動起動設定を有効にします

# chkconfig nginx on

ひとまず、Nginxを起動してみましょう。

# service nginx start

ブラウザでアクセスしてみましょう
ウェブサーバのIPアドレスを、ウェブブラウザのアドレスに入力してみます
スクリーンショット 2015-10-01 16.07.38.png
上のような表示になるはずです。

確認次第、Nginxはストップさせておきます。

# service nginx stop

プロジェクトをいれて置くためのディレクトリを作成します。
場所はどこでも良いですが、あまりユーザに依存する場所は好ましくないでしょう。
ここでは、/var/wwwとします。
ついでに、PHPの動作を確認するために、テスト用のドキュメントルートを作成します

# mkdir /var/www/test

ついでに、専用ユーザとグループ、ユーザのパスワードを設定します

# adduser www
# passwd www
# gpasswd -a www www

先ほど作成したドキュメントルートを専用ユーザと専用グループの所有とします。
パーミッションの設定は、本来、最低限であることが好ましいです。

# chown -R www:www /var/www/test
# chmod -R 2775 /var/www/test

PHPとPHP-FPMをインストール

PHPとPHP-FPMをインストールします

# yum install php php-fpm -y

php-fpmを、自動起動設定し、起動します

# chkconfig php-fpm on 
# service php-fpm start

PHPが動くか確認する

nginxの設定ファイルを変更します。

# vi /etc/nginx/nginx.conf

5行目のuserをnginxからwwwに変更します

user www 

46行目の"server {"から始まるセクションをコメントアウトします。

# server{
    listen    80;
//以下略
# }

コメントアウトした箇所の後ろに、下記を追記してみてください

    server {
        listen      80;
        server_name localhost;
        root        /var/www/test; #テスト用のドキュメントルート
        index       index.php index.html;
        location ~ \.php$ {
            fastcgi_pass 127.0.0.1:9000;
            fastcgi_index index.php;
            fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
            fastcgi_param PATH_INFO $fastcgi_script_name;
            include fastcgi_params;
        }
    }

保存します。

確認用のPHPファイルを作成します

# vim /var/www/test/index.php

とりあえず、このように記述します

<?php
echo 'test';

設定を確認します

# service nginx configtest

エラーが出ていなければ、nginxを起動します

# servece nginx start

再び、ブラウザでサーバにアクセスしてみます。
testと出ていればOKです。

11
9
0

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
11
9

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?