CentOS7.1にnginx+php+openSSLでHTTP/2環境を構築してみた その①

最近流行りの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

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;
}

ファイルを作成したら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を起動させます

# 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

確認が出来たら先ほど作成した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;
 }
}

設定ファイルの修正が完了したらnginxの再起動とphp-fpmの起動を行います

# systemctl restart nginx
# systemctl start php-fpm

起動が完了したらrootフォルダにPHPファイルを作成しアクセスしてみます

# vi info.php
<?php
infophp();
?>

PHP設定情報が表示されればnginxとPHPの連携が成功です
まずはここまででHTTP/2化はその②で紹介いたします

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です