PHP8.0の設定をWordPress向けにチューニングする方法を解説します。
事前準備
PHPの設定を変更するにあたり、事前準備を行います。
設定ファイル格納先の確認
PHPは複数インストールすることが可能です。
現在、アクティブになっているPHPの設定ファイルが格納されている場所を確認します。
以下のようにコマンドを実行し、実行結果に表示されたパス(例では、/etc/opt/remi/php80/php.ini)が、PHPの設定ファイルになります。
[root@STKWPS001 ~]# php -i | grep /php.ini Loaded Configuration File => /etc/opt/remi/php80/php.ini
設定ファイルのバックアップ
設定ファイルの格納先が分かったところで、設定ファイルのバックアップを取得します。
[root@STKWPS001 ~]# cp -pv /etc/opt/remi/php80/php.ini /etc/opt/remi/php80/php.ini.org '/etc/opt/remi/php80/php.ini' -> '/etc/opt/remi/php80/php.ini.org'
各種設定
各種設定について説明します。
viコマンドで、設定ファイルを修正します。
*FTPクライアントを使用して、ローカルで修正しても問題ありません。
[root@STKWPS001 ~]# vi /etc/opt/remi/php80/php.ini
PHPのバージョンを非表示に変更
PHPは、httpヘッダーにバージョン情報を表示します。
セキュリティ的に表示しない方が良いため、非表示にします。
- 変更前:expose_php = On
- 変更後:expose_php = Off
アップロードサイズの変更
デフォルトのアップロードサイズは「2MB」と少ないため、サイズを変更します。
今回は、WordPress向けの設定なので、記事用の画像をアップロードすることを考慮し、「10MB」に変更したいと思います。
もっと大きなサイズのファイルを扱う場合は、適宜変更して下さい。
- 変更前:upload_max_filesize = 2M
- 変更後:upload_max_filesize = 10M
また、合わせて、POSTのデータサイズも変更します。
- 変更前:post_max_size = 8M
- 変更後:post_max_size = 10M
タイムゾーンの設定
タイムゾーンの設定を行います。
- 変更前:;date.timezone =
- 変更後:date.timezone =
"Asia/Tokyo"
マルチバイト(日本語)対応
日本語を使用するための設定を行います。
- 変更前:;mbstring.language = Japanese
- 変更後:mbstring.language = Japanese
内部文字エンコーディングのデフォルト値を設定します。
- 変更前:;mbstring.internal_encoding =
- 変更後:mbstring.internal_encoding = UTF-8
HTTP通信の入力時に使用する文字コードを設定します。
- 変更前:;mbstring.http_input =
- 変更後:mbstring.http_input = UTF-8
HTTP通信の出力時に使用する文字コードが自動変換されないように設定します。
- 変更前:;mbstring.http_output =
- 変更後:mbstring.http_output = pass
HTTPの入力変換を有効にするよう設定します。
こちらを有効にすることで、文字化けなどの問題が発生した場合は、Offに戻して下さい。
- 変更前:;mbstring.encoding_translation = Off
- 変更後:mbstring.encoding_translation = On
文字コードの自動検出の優先順位を定義する設定を行います。
autoにすることで、UTF-8が最初に選択されるようになります。
- 変更前:;mbstring.detect_order = auto
- 変更後:mbstring.detect_order = auto
変換出来ない文字がある場合に、代替の文字を出力しないように設定します。
- 変更前:;mbstring.substitute_character = none
- 変更後:mbstring.substitute_character = none
最大メモリサイズの変更
WordPress実行時に使用出来る、最大メモリサイズを変更します。
- 変更前:memory_limit = 128M
- 変更後:memory_limit = 512M
設定の反映
変更した設定の反映を行います。
PHPは設定ファイルを修正しただけでは設定が変更されないため、Apacheを再起動して設定を反映します。
Apacheの再起動コマンドは下記のようなものがあります。
お使いの環境に合わせて、コマンドを実行して下さい。
[root@STKWPS001 ~]# systemctl restart httpd
[root@STKWPS001 ~]# service httpd restart Redirecting to /bin/systemctl restart httpd.service
設定の確認
設定が正しく反映されているかの確認を行います。
まず、以下の記事より「疎通確認用ファイルの作成」を実施して下さい。
次に、以下の記事より「疎通確認」を実施して下さい。
上記の作業を実施して表示される画面(↓のような画面)では、PHPの設定内容を確認することが可能です。
ここで、設定した項目の値が想定通りであることを確認して下さい。
値の確認が出来れば、作業は完了となります。
コメント