Quantcast
Channel: PHP8タグが付けられた新着記事 - Qiita
Viewing all articles
Browse latest Browse all 521

PowerCMSX+Ubuntu20.04+nginx環境におけるPHP7→8移行

$
0
0

はじめに

対象読者

  • PowerCMS Xユーザーで、
  • Ubuntu 20.04 で、
  • PHP 7.x で、
  • nginx 環境の人

補足

  • PowerCMS X ユーザーでなかったとしても PHP 7.x → PHP 8.0 移行手順については参考になるかとは思います

この記事でやること

  • PHP 8.0 を nginx で動作させて PowerCMS X における実行まで見届ける

手順

パッケージリポジトリの準備

  • apt upgradeで PHP 8.0 がインストールされない場合には、以下の手続きをとる
  • もしまだ以前に ppa:ondrej/phpを追加していなければ、以下のように追加する
apt install software-properties-common
add-apt-repository ppa:ondrej/php

インストール

PHP8.0 本体

  • apt upgradeでインストールされていれば不要
apt install php8.0

関連する他のもの

apt install php8.0-gd php8.0-fpm php8.0-mbstring php8.0-mysql php8.0-xml php8.0-zip

path 確認

  • 以下の path にファイルが存在していることを確認
/run/php/php8.0-fpm.sock

owner, group の設定

  • もし nginx ユーザーを www-data以外のもの ( たとえば nginxなど ) にしている場合は、上記 php8.0-fmp.sockowner, groupをそれに準じて chownしてください。例えば以下のように
chown nginx:nginx /run/php/php8.0-fpm.sock
  • また、以下の設定を書き換えてください
/etc/php/8.0/fpm/pool.d/www.conf
; 前略
user=nginxgroup=nginx; 中略
listen.owner=nginxlisten.group=nginx; 後略

max_input_vars の設定

  • PowerCMS X 公式によると 'max_input_vars'の推奨値は2000以上とのことなので、それに合わせて書き換えます。サーバスペック等に応じて必要な値を。
/etc/php/8.0/fpm/php.ini
; 前略
max_input_vars=2000; 後略

PHP-FPM 再起動

systemctl restart php8.0-fpm.service

apache2 無効化

systemctl disable --now apache2

nginx

設定書き換え

  • 以下のように 8.0 へ書き換える
# 前略fastcgi_passunix:/run/php/php8.0-fpm.sock;# 後略

再読込

  • さいごに nginx の再読込をおこなうと、ダッシュボードが表示されるようになるはずです
nginx -s reload

確認

  • 以下の php を実行したときにインストール ver. が確認できます
    • いくつかのモジュール等は必須でないのでアラートが表示されていますが、必須のものだけ動いていればヨシです
https://xxxxxx.xxx/pt-check.php

image.png

おわりに

感想

  • PHP 8.0 で PowerCMS X を稼働させてみましたが……管理画面内のページ遷移速度が高速すぎて笑ってしまった。これ SPA だっけ……?? となった。
  • 速いは正義。

関連記事

参考記事


Viewing all articles
Browse latest Browse all 521

Trending Articles