PHP7.2でAPCu+OPcacheを使う(CentOS8)
提供:あわ自由帳
メインページ > CentOS_8_で自宅サーバー構築 > PHP7.2でAPCu+OPcacheを使う(CentOS8)
PHPは5.5以降、APCからZend OPcache+APCuに変わりました。 APCはインストールしてiniファイルを編集したりするだけでopecode cacheとdata cacheを勝手に上手い具合にやってくれましたが、APCuは自分で使うようなスクリプトを書かなければなりません。
- テスト用自宅サーバーで、動作確認しています。導入される方は自己責任で行ってください。
- EPELリポジトリ、Remiリポジトリを導入済みとします。
- MediaWiki 1.30.0 動作しました。
- WordPress 4.9.5 動作しました。
インストール
PHP7.2をdnfで入れていれば、おそらくAPCuとOPcacheもあるはずです。
[root@host3 ~]# dnf install php-pecl-apcu php-opcache
設定
APCu のメモリ使用量
[root@host3 ~]# vi /etc/php.d/40-apcu.ini ## APCuの最大メモリ使用量を32MB → 16MB ;apc.shm_size=32M ↓ apc.shm_size=16M
OPcache メモリ使用量
[root@host3 ~]# vi /etc/php.d/10-opcache.ini ; The OPcache shared memory storage size. ## OPcacheの最大メモリ使用量を128MB → 256MB opcache.memory_consumption=128 ↓ opcache.memory_consumption=256
アクセス制限
ローカルからのみアクセス出来るように設定する。
[root@host3 ~]# vi /etc/httpd/conf.d/apc.conf <Directory /var/www/html/sudachi.jp/apc> Order Deny,Allow Deny from all Allow from 127.0.0.1 192.168.1.0/24 </Directory> [root@host3 ~]# vi /etc/httpd/conf.d/opcache-status.conf <Directory /var/www/html/sudachi.jp/opcache-status> Order Deny,Allow Deny from all Allow from 127.0.0.1 192.168.1.0/24 </Directory>
Webサーバー再起動
[root@host3 ~]# systemctl restart httpd
Webサーバーステータス
[root@host3 ~]# systemctl status httpd ● httpd.service - The Apache HTTP Server Loaded: loaded (/usr/lib/systemd/system/httpd.service; enabled; vendor preset: disabled) Drop-In: /usr/lib/systemd/system/httpd.service.d mqphp-fpm.conf Active: active (running) since Tue 2020-03-10 21:05:30 JST; 25s ago Docs: man:httpd.service(8) Main PID: 1832 (httpd) Status: "Running, listening on: port 443, port 80" Tasks: 213 (limit: 26213) Memory: 43.9M CGroup: /system.slice/httpd.service tq1832 /usr/sbin/httpd -DFOREGROUND tq1833 /usr/sbin/httpd -DFOREGROUND tq1834 /usr/sbin/httpd -DFOREGROUND tq1835 /usr/sbin/httpd -DFOREGROUND mq1836 /usr/sbin/httpd -DFOREGROUND 3月 10 21:05:30 host3.sudachi.jp systemd[1]: Starting The Apache HTTP Server... 3月 10 21:05:30 host3.sudachi.jp systemd[1]: Started The Apache HTTP Server. 3月 10 21:05:30 host3.sudachi.jp httpd[1832]: Server configured, listening on: port 443, port 80