さくらVPS【SSL】でPHP

さくらVPSでスタートアップスクリプトを使用して簡単に構築したSSL環境にPHPをインストール

PHPは、EPELとREMIリポジトリを導入して、PHP7.3をインストールしました。

◎EPELとREMIリポジトリの導入

  • EPELとREMIのGPGキーをインポートしました。

    # rpm --import http://vault.centos.org/RPM-GPG-KEY-CentOS-7
    # rpm --import http://rpms.famillecollet.com/RPM-GPG-KEY-remi
    
  • REMIリポジトリをインストールしました。
    # rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-7.rpm
    
  • php7.3をインストールしました。
    # yum install --enablerepo=remi-php73 php
    

◎PHPのバージョン確認

  • PHPのバージョンを確認しました。
    # php -v
    PHP 7.3.5 (cli) (built: Apr 30 2019 08:37:17) ( NTS )
    

◎PHP-FPMのインストールと設定

  • NginxでPHPを動かすために、PHP-FPMをyumコマンドでインストールしました。
    # yum install --enablerepo=remi-php73 php-fpm 
    
  • 「/etc/php-fpm.d/www.conf」に記載されている内容を修正しました。
    # cd /etc/php-fpm.d/
    # cp www.conf www.conf.org
    # nano www.conf
    
    • userとgroupを「apache」⇒「nginx」に変更し、nginxとphp-fpmとの接続にUNIX socketを指定しました。
      ;user = apache
      user = nginx
      ;group = apache
      group = nginx
      ;listen = 127.0.0.1:9000
      listen = /var/run/php-fpm/php-fpm.sock
      listen.owner = nginx
      listen.group = nginx
      

◎Nginxの設定

  • 「/etc/nginx/conf.d/」以下の「default.conf」と「https.conf」をエディタnanoで下記のように編集しました。
    # cd /etc/nginx/conf.d/
    # nano default.conf (または https.conf)
    
    • 「default.conf」と「https.conf」の「location /」にあるindexの記述に「index.php」を追記しました。

      location / {
          #root   /usr/share/nginx/html;
          root   /var/www/html;
          index  index.php index.html index.htm;
      }
      
    • コメントアウトされている「# Pass the PHP scripts to FastCGI server」以下の記述を下記に修正して「default.conf」と「https.conf」に追記しました。
          location ~ \.php$ {
          # root           html;
          root           /var/www/html;
          #fastcgi_pass   127.0.0.1:9000;
          fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;
          fastcgi_index  index.php;
          # fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
          fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
          include        fastcgi_params;
          }
      
  • PHP-FPM が 問題なく起動するかの確認を行いました。
    # systemctl stop php-fpm
    # systemctl stop nginx.service
    # systemctl start php-fpm
    # systemctl start nginx.service
    
  • PHP-FPM の 自動起動を設定しました。
    # systemctl enable php-fpm
    

◎PHPの動作確認

  • 「phpinfo.php」ファイルを作成しました。
    # cd /var/www/html
    # nano phpinfo.php
    
    • 「phpinfo.php」の記載内容は以下となります。
      <?php phpinfo(); ?>
      
  • 「phpinfo.php」の所有者を「ngnix」、パーミッションを「644」に設定変更しました。
    # chown nginx:nginx ./phpinfo.php
    # chmod 644 ./phpinfo.php
    
  • ブラウザで「http://(サーバーのURL)/」と「https://(サーバーのURL)/」にアクセスし、作成した「phpinfo.php」が「http:」と「https:」のどちらの場合も表示されることを確認し、PHPのインストールと動作確認を終了しました。

<= さくらVPS【SSL】でNginx | | さくらVPS【SSL】でMySQL =>