PHP-APCを使ってみる。
こんばんはファガイです。
本日はPHP-APCを使ってみた。
PHP-APCとは
PHP-APCとはAPC(Alternative PHP Cache)と呼ばれ、PHPの中間コードをメモリにキャッシュし、次回アクセス時に高速化ををするモジュールです。
以前から知っていましたが、高速化をする機会がなく、必要ないと思っていたのですが、一旦ローカル上でやってみようかなと思い、やってみた。
環境
一応環境。
CentOS 6
Apache 2.2.15
PHP 5.4.13
PHP-APCの導入
php-apcの導入はyumから行います。
yum install php-pecl-apc
これでおk。
しかしながら、私の環境ではこんなエラーが。
Loaded plugins: fastestmirror, priorities Loading mirror speeds from cached hostfile * base: www.ftp.ne.jp * elrepo: ftp.osuosl.org * epel: ftp.iij.ad.jp * extras: www.ftp.ne.jp * updates: www.ftp.ne.jp Setting up Install Process Resolving Dependencies --> Running transaction check ---> Package php-pecl-apc.i686 0:3.1.9-2.el6 will be installed --> Processing Dependency: php(zend-abi) = 20090626 for package: php-pecl-apc-3.1.9-2.el6.i686 --> Processing Dependency: php(api) = 20090626 for package: php-pecl-apc-3.1.9-2.el6.i686 --> Finished Dependency Resolution Error: Package: php-pecl-apc-3.1.9-2.el6.i686 (base) Requires: php(api) = 20090626 Installed: php-common-5.4.13-1.el6.remi.i686 (@remi) php(api) = 20100412-x86-32 Available: php-common-5.3.3-22.el6.i686 (base) php(api) = 20090626 Error: Package: php-pecl-apc-3.1.9-2.el6.i686 (base) Requires: php(zend-abi) = 20090626 Installed: php-common-5.4.13-1.el6.remi.i686 (@remi) php(zend-abi) = 20100525-x86-32 Available: php-common-5.3.3-22.el6.i686 (base) php(zend-abi) = 20090626 You could try using --skip-broken to work around the problem You could try running: rpm -Va --nofiles --nodigest
エラー・・・だと・・・?
見てみる限り、baseのapcをインストールしようとしたけど、php-commonはremiリポジトリから取得していたためダメっぽい。
なので、php-pecl-apcをremi経由でインストール。
yum install php-pecl-apc --enablerepo=remi
これで行けたので良かったです。
あとはこれを反映するために、
service httpd restart
とりあえず、再起動。gracefulでも良いかも。(確認はしていない)
apc-adminを追加する
php-apcにはWebの管理スクリプトが付属されているため、それも導入。
先に置く場所を追加。
mkdir /var/www/html/apc
スクリプトをコピー。
cp /usr/share/doc/php-pecl-apc-*/apc.php /var/www/html/apc
confファイルを作る。
vi /var/www/html/apc/apc.conf.php <?php defaults('ADMIN_USERNAME', 'root'); defaults('ADMIN_PASSWORD', 'password'); ?>
これでOK。
必要な人はhttpdのconfもいじったほうがいいです。
以上ー。
コメント