最近流行りのnginxをCentOS7.1で設定してみようと思い色々やってみました
まずはCentOS7.1のパッケージにnginxとphp7がないためepelパッケージをインストールします
# yum install epel-release
yumコマンドを実行した際にepelパッケージが使用されるようになるため、通常のパッケージのみ使用したい場合は「/etc/yum.repos.d/epel.repo」ファイルを書き換えます
[epel]
enabled=1
↓
enabled=0
enabled=1
↓
enabled=0
epelパッケージをインストールした後はnginxパッケージをインストールします
# yum –enablerepo=epel install nginx
設定ファイルは「/etc/nginx」に作成されます
サーバー設定用のファイルを「/etc/nginx/conf.d」の下に作成します
ファイル名は「ドメイン名.conf」などにします
server {
listen 80;
server_name domain.com;
root /var/www/html;
index index.html index.shtml;
}
listen 80;
server_name domain.com;
root /var/www/html;
index index.html index.shtml;
}
ファイルを作成したらnginxを起動させる前にconfファイルに間違いがないかチェックをします
# nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
エラーがなかったらnginxを起動させます
# systemctl start nginx
起動したらブラウザで「http://ドメイン」へアクセスをしてみて表示されればOKです
確認が出来たらPHPのインストールを行っていきます。今回はPHP7.0で設定を行いました
まずは先ほどインストールしたEPELを使用してPHPのインストールから
同時にmbstrinなどのパッケージもインストールを行います
# yum install –enablerepo=repo,remi-php70 php php-mbstring php-pear php-fpm php-mcrypt php-mysql
インストールが完了したらまずはバージョン確認
# php -v
PHP 7.0.16 (cli) (built: Feb 14 2017 17:22:12) ( NTS )
Copyright (c) 1997-2017 The PHP Group
Zend Engine v3.0.0, Copyright (c) 1998-2017 Zend Technologies
PHP 7.0.16 (cli) (built: Feb 14 2017 17:22:12) ( NTS )
Copyright (c) 1997-2017 The PHP Group
Zend Engine v3.0.0, Copyright (c) 1998-2017 Zend Technologies
確認が出来たら先ほど作成したnginxの設定ファイルを変更します
server {
………….
location ~\.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_script_name;
include fastcgi_params;
}
}
………….
location ~\.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_script_name;
include fastcgi_params;
}
}
設定ファイルの修正が完了したらnginxの再起動とphp-fpmの起動を行います
# systemctl restart nginx
# systemctl start php-fpm
# systemctl start php-fpm
起動が完了したらrootフォルダにPHPファイルを作成しアクセスしてみます
# vi info.php
<?php
infophp();
?>
<?php
infophp();
?>
PHP設定情報が表示されればnginxとPHPの連携が成功です
まずはここまででHTTP/2化はその②で紹介いたします