ポイント
- 管理ツールは、/usr/share/doc/php-pecl-apc-3.1.14/apc.php にある。
- 上記場所になくても、find / -name “apc.php” で探せば良い。
- apc.php をドキュメントルート配下に置いてウェブブラウザからアクセスすれば APC の使用状況をみることができる。
- apc.php を編集して、ADMIN_USERNAME、ADMIN_PASSWORD を初期値から変更すれば管理ツールの「User Cache Entries」が使用できるようになる。
- APC の把握ツールでは、バージョン情報、キャッシュ状況、APC 設定情報を知ることができる。
おまけのポイント
- APC の把握ツールではグラフを表示するので PHP の GD を予め導入しておくとよい。
- PHP の GD をインストールする際、PHP を Remi リポジトリでインストールした場合だと Remi だけでは GD インストールが失敗した。依存関係を解決するために、RPMforge リポジトリも必要だった。
実際に開発環境にて実践してみました記録♪
APC 管理ツールの PHP ファイルを探します。
1 2 3 | [root@localhost ~] # find / -name "apc.php" /usr/share/doc/php-pecl-apc-3 .1.14 /apc .php [root@localhost ~] # |
ウェブブラウザからアクセスするために、ドキュメントルートの下にコピーし、パーミッションの設定を行いました。
1 2 | [root@localhost ~] # cp -ap /usr/share/doc/php-pecl-apc-3.1.14/apc.php /var/www/html/apc.php [root@localhost ~] # chown apache:apache /var/www/html/apc.php [root@localhost ~]# |
さて、わたくしはドキュメントルートに apc.php を配置しましたので、http://192.168.56.111/apc.php にウェブブラウザからアクセスいたしまして、無事 APC の把握ツール画面が表示されました。
あれ?グラフが表示されません。開発環境には PHP のモジュールである、GD がインストールされていないようです。早速入れました。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 | [root@localhost ~] # yum --enablerepo=remi install php-gd Loaded plugins: fastestmirror Determining fastest mirrors * base: ftp .tsukuba.wide.ad.jp * extras: ftp .tsukuba.wide.ad.jp * remi: rpms.famillecollet.com * updates: ftp .jaist.ac.jp base | 1.1 kB 00:00 base /primary | 983 kB 00:00 base 2770 /2770 extras | 2.1 kB 00:00 extras /primary_db | 164 kB 00:00 updates | 1.9 kB 00:00 updates /primary_db | 206 kB 00:00 Setting up Install Process Resolving Dependencies --> Running transaction check ---> Package php-gd.i386 0:5.4.13-1.el5.remi set to be updated --> Processing Dependency: libt1.so.5 for package: php-gd --> Processing Dependency: libXpm.so.4 for package: php-gd --> Running transaction check ---> Package libXpm.i386 0:3.5.5-3 set to be updated ---> Package php-gd.i386 0:5.4.13-1.el5.remi set to be updated --> Processing Dependency: libt1.so.5 for package: php-gd --> Finished Dependency Resolution php-gd-5.4.13-1.el5.remi.i386 from remi has depsolving problems --> Missing Dependency: libt1.so.5 is needed by package php-gd-5.4.13-1.el5.remi.i386 (remi) Error: Missing Dependency: libt1.so.5 is needed by package php-gd-5.4.13-1.el5.remi.i386 (remi) You could try using --skip-broken to work around the problem You could try running: package-cleanup --problems package-cleanup --dupes rpm -Va --nofiles --nodigest The program package-cleanup is found in the yum-utils package. [root@localhost ~] # |
あれ・・・入りません><。PHP は Remi リポジトリでインストールしたと思うので Remi のみ有効になるように指定したのですけれども。。。
あれやこれやと十数分格闘して、ようやくインストールすることができました!原因は簡単で、GD と依存するパッケージをインストールするのに、RPMforge リポジトリも必要とのことでした!
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 | [root@localhost ~] # yum --enablerepo=epel,remi,rpmforge install php-gd Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile * base: ftp .tsukuba.wide.ad.jp * epel: ftp .jaist.ac.jp * extras: ftp .tsukuba.wide.ad.jp * remi: rpms.famillecollet.com * rpmforge: mirror.fairway. ne .jp * updates: ftp .jaist.ac.jp epel | 3.6 kB 00:00 rpmforge | 1.9 kB 00:00 Not using downloaded repomd.xml because it is older than what we have: Current : Fri Dec 21 11:45:21 2012 Downloaded: Wed Jul 25 10:45:07 2012 Setting up Install Process Resolving Dependencies --> Running transaction check ---> Package php-gd.i386 0:5.4.13-1.el5.remi set to be updated --> Processing Dependency: libt1.so.5 for package: php-gd --> Processing Dependency: libXpm.so.4 for package: php-gd --> Running transaction check ---> Package libXpm.i386 0:3.5.5-3 set to be updated ---> Package t1lib.i386 0:5.1.2-1.el5.rf set to be updated --> Processing Dependency: libICE.so.6 for package: t1lib --> Processing Dependency: libXaw.so.7 for package: t1lib --> Processing Dependency: libXt.so.6 for package: t1lib --> Processing Dependency: libSM.so.6 for package: t1lib --> Processing Dependency: libXmu.so.6 for package: t1lib --> Running transaction check ---> Package libICE.i386 0:1.0.1-2.1 set to be updated ---> Package libSM.i386 0:1.0.1-3.1 set to be updated ---> Package libXaw.i386 0:1.0.2-8.1 set to be updated ---> Package libXmu.i386 0:1.0.2-5 set to be updated ---> Package libXt.i386 0:1.0.2-3.2.el5 set to be updated --> Finished Dependency Resolution Dependencies Resolved =============================================================================================== Package Arch Version Repository Size =============================================================================================== Installing: php-gd i386 5.4.13-1.el5.remi remi 215 k Installing for dependencies: libICE i386 1.0.1-2.1 base 54 k libSM i386 1.0.1-3.1 base 27 k libXaw i386 1.0.2-8.1 base 324 k libXmu i386 1.0.2-5 base 62 k libXpm i386 3.5.5-3 base 45 k libXt i386 1.0.2-3.2.el5 base 173 k t1lib i386 5.1.2-1.el5.rf rpmforge 362 k Transaction Summary =============================================================================================== Install 8 Package(s) Upgrade 0 Package(s) Total download size: 1.2 M Is this ok [y /N ]: y Downloading Packages: (1 /8 ): libSM-1.0.1-3.1.i386.rpm | 27 kB 00:00 (2 /8 ): libXpm-3.5.5-3.i386.rpm | 45 kB 00:00 (3 /8 ): libICE-1.0.1-2.1.i386.rpm | 54 kB 00:00 (4 /8 ): libXmu-1.0.2-5.i386.rpm | 62 kB 00:00 (5 /8 ): libXt-1.0.2-3.2.el5.i386.rpm | 173 kB 00:00 (6 /8 ): php-gd-5.4.13-1.el5.remi.i386.rpm | 215 kB 00:03 (7 /8 ): libXaw-1.0.2-8.1.i386.rpm | 324 kB 00:00 (8 /8 ): t1lib-5.1.2-1.el5.rf.i386.rpm | 362 kB 00:01 ----------------------------------------------------------------------------------------------- Total 161 kB /s | 1.2 MB 00:07 Running rpm_check_debug Running Transaction Test Finished Transaction Test Transaction Test Succeeded Running Transaction Installing : libXpm 1 /8 Installing : libICE 2 /8 Installing : libSM 3 /8 Installing : libXt 4 /8 Installing : libXmu 5 /8 Installing : libXaw 6 /8 Installing : t1lib 7 /8 Installing : php-gd 8 /8 Installed: php-gd.i386 0:5.4.13-1.el5.remi Dependency Installed: libICE.i386 0:1.0.1-2.1 libSM.i386 0:1.0.1-3.1 libXaw.i386 0:1.0.2-8.1 libXmu.i386 0:1.0.2-5 libXpm.i386 0:3.5.5-3 libXt.i386 0:1.0.2-3.2.el5 t1lib.i386 0:5.1.2-1.el5.rf Complete! [root@localhost ~] # |
OK ですね!これでもう一度 APC 管理ツールページにアクセスしまして、無事「Host Status Diagrams」「Detailed Memory Usage and Fragmentation」の部分にグラフが表示され・・・ません><!あ、Apache の再起動。。。
1 2 3 4 | [root@localhost ~] # /etc/init.d/httpd restart httpd を停止中: [ OK ] httpd を起動中: [ OK ] [root@localhost ~] # |
グラフが表示されました♪
APC 管理ツールページの「User Cache Entries」にアクセスしようとしますと認証を求められました。apc.php を編集しましてユーザー名とパスワードを設定いたしました。
1 | [root@localhost ~] # vim /var/www/html/apc.php |
最初は次のようになっておりまして、開発環境ですのでセキュリティ強度は一切無視して次のように修正いたしました。
41 42 | defaults( 'ADMIN_USERNAME' , 'apc' ); // Admin Username defaults( 'ADMIN_PASSWORD' , 'password' ); // Admin Password - CHANGE THIS TO ENABLE!!! |
↓
41 42 | defaults( 'ADMIN_USERNAME' , 'admin' ); // Admin Username defaults( 'ADMIN_PASSWORD' , 'admin' ); // Admin Password - CHANGE THIS TO ENABLE!!! |
これで APC 管理ツールページの「User Cache Entries」にアクセスすることができました!!!ですけれども、なにも表示されておらず認証をしてまでなにをするのか、ちょっとわかりませんでした><。
おわりに
認証が必要なページは本番環境である程度時間がたってからまた試してみたいと思います。
また、本投稿の内容を進めるにあたり、次のページが参考になりました。ありがとうございます!
以上です。