Integrating APC (Alternative PHP Cache) Into PHP5 (Fedora 13 & Apache2)

Want to support HowtoForge? Become a subscriber!
 
Submitted by falko (Contact Author) (Forums) on Wed, 2010-08-25 19:02. :: Fedora | Apache | PHP

Integrating APC (Alternative PHP Cache) Into PHP5 (Fedora 13 & Apache2)

Version 1.0
Author: Falko Timme <ft [at] falkotimme [dot] com>
Follow me on Twitter
Last edited 07/19/2010

This guide explains how to integrate APC (Alternative PHP Cache) into PHP5 on a Fedora 13 system (with Apache2). APC is a free and open PHP opcode cacher for caching and optimizing PHP intermediate code. It's similar to other PHP opcode cachers, such as eAccelerator and XCache.

I do not issue any guarantee that this will work for you!

 

1 Preliminary Note

I have tested this on a Fedora 13 server with the IP address 192.168.0.100 where Apache2 and PHP5 are already installed and working. I'll use Apache's default document root /var/www/html in this tutorial for demonstration purposes. Of course, you can use any other vhost as well, but you might have to adjust the path to the info.php file that I'm using in this tutorial.

 

2 Checking PHP5's Current State

First, before we install APC, let's find out about our PHP5 installation. To do this, we create the file info.php in our document root /var/www/html:

vi /var/www/html/info.php

<?php
phpinfo();
?>

Afterwards, we call that file in a browser: http://192.168.0.100/info.php

As you see, we have PHP 5.3.2 installed...

... but APC isn't mentioned anywhere on the page:

If you see that another PHP opcode cacher such as eAccelerator is installed, you must remove it before you install APC:

yum remove php-eaccelerator

Restart Apache afterwards:

/etc/init.d/httpd restart

 

3 Installing APC

APC is a PHP extension that can be installed as follows:

yum install php-pecl-apc

Now that APC is installed, take a look at the configuration file /etc/php.d/apc.ini. The default settings should be ok, but in case you want to change anything, you can find a list of all available configuration options on http://de2.php.net/manual/en/apc.configuration.php.

vi /etc/php.d/apc.ini

That's it. Restart Apache, and you're done:

/etc/init.d/httpd restart

Afterwards, open info.php again in a browser: http://192.168.0.100/info.php

You should now see APC mentioned on the page which means it has successfully been integrated and is working as expected:

 

4 Links


Please do not use the comment function to ask for help! If you need help, please use our forum.
Comments will be published after administrator approval.