PHP-Pecl Memcache モジュールを PHP 7.x にインストールするための多くの方法を読み、調査し、試した後、PHP 7+ で提供される pecl の memcache モジュールには多くの既知の問題があることに気付きました。しかし、PHP 7.x に PHP-Memcache をインストールする方法を見つけました。読み続けてください。
幸いなことに、Websupport.tk の担当者は、PHP 7.x バージョンでコンパイルして正常に動作する PHP-Memcache の代替バージョンを Github にアップロードしました。 Github プロジェクトですべての変更を確認できます:https://github.com/websupport-sk/pecl-memcache
手順:PHP-Memcache を PHP 7 にインストールする
ファイルをダウンロードして展開します
cd /usr/local/src; wget https://github.com/websupport-sk/pecl-memcache/archive/NON_BLOCKING_IO_php7.zip; unzip NON_BLOCKING_IO_php7.zip; cd pecl-memcache-NON_BLOCKING_IO_php7;
設定、コンパイル、インストール
/opt/cpanel/ea-php71/root/usr/bin/phpize && ./configure --enable-memcache --with-php-config=/opt/cpanel/ea-php71/root/usr/bin/php-config && make;
cPanel PHP 7.1 php.ini ファイル内の modile をコピーして有効にします
cp -av modules/memcache.so /opt/cpanel/ea-php71/root/usr/lib64/php/modules/; echo ';enable memcache pecl module php7' > /opt/cpanel/ea-php71/root/etc/php.d/40-memcached.ini; echo 'extension=memcache.so' >> /opt/cpanel/ea-php71/root/etc/php.d/40-memcached.ini;
Apache を再起動して変更を適用します:
/scripts/restartsrv_httpd
これを行うと、モジュールが PHP 7.1 によって適切に報告されていることがわかります。
[[email protected]:~]php -v ea-php-cli Copyright 2016 cPanel, Inc. PHP 7.1.0 (cli) (built: Jan 4 2017 15:09:11) ( NTS ) Copyright (c) 1997-2016 The PHP Group Zend Engine v3.1.0-dev, Copyright (c) 1998-2016 Zend Technologies with Zend OPcache v7.1.0, Copyright (c) 1999-2016, by Zend Technologies
次のコマンドを実行して、PHP-Memcache が PHP サーバーにロードされているかどうかを確認します。
php -i | grep memcache -i
これは予想される出力です:
[[email protected]:~]php -i | grep memcache -i /opt/cpanel/ea-php71/root/etc/php.d/40-memcached.ini, memcache memcache support => enabled memcache.allow_failover => 1 => 1 memcache.chunk_size => 32768 => 32768 memcache.compress_threshold => 20000 => 20000 memcache.default_port => 11211 => 11211 memcache.hash_function => crc32 => crc32 memcache.hash_strategy => consistent => consistent memcache.lock_timeout => 15 => 15 memcache.max_failover_attempts => 20 => 20 memcache.protocol => ascii => ascii memcache.redundancy => 1 => 1 memcache.session_redundancy => 2 => 2 Registered save handlers => files user memcache
それでおしまい。これで、cPanel / EA4 ベースのサーバー上の PHP 7.x バージョンで PHP-Memcache が正常に動作するはずです。 PHP-Memcache を PHP 7.x にインストールする他の方法を知っている場合は、その方法をこのチュートリアルに追加できるようお知らせください。
cPanel を使用して PHP 7.x に PHP-Memcache をインストールする方法が最後に変更されました:Esteban Borges による 2017 年 2 月 7 日