Back to Linux Basement

Eaccelerator on Debian Etch | Linux Basement Presents: Chad's Blog

Eaccelerator on Debian Etch

Forget everything below, and follow these directions

http://www.howtoforge.com/eaccelerator_php5_debian_etch

*******************************************************************

Download the latest version of eaccelerator over at http://www.eaccelerator.net/wiki/

I used the following directions to increase web server performance by installing eaccelerator

phpize
./configure   --enable-eaccelerator=shared
make
make install
When you do the make install, you will get a path back to your sources, make sure you have that path.
You will enter it below for the zend_extension

The configuration parameters are as follows:

zend_extension                  = "/usr/lib/php5/SOMENUMBER/eaccelerator.so"
eaccelerator.shm_size           = 0
eaccelerator.cache_dir          = "/var/cache/eaccelerator"
eaccelerator.enable             = 1
eaccelerator.optimizer          = 1
eaccelerator.check_mtime        = 1
eaccelerator.shm_max            = 0
eaccelerator.shm_ttl            = 0
eaccelerator.shm_prune_period   = 0
eaccelerator.shm_only           = 0
eaccelerator.compress           = 1
eaccelerator.compress_level     = 7
 Make sure you manually create the /var/cache/eaccelerator directory, and chmod it 644.
More info here.

http://www.eaccelerator.net/wiki/InstallFromSource

Step 1. Compiling eAccelerator

You need to run these commands in the eAccelerator source directory.
eAccelerator supports multiple php branches so you need to bootstrap
eAccelerator first. This can be done with the phpize script. It very
important that you use the phpize script of the php version for which
you want to compile eAccelerator.
The phpize and php-config scripts are available in the development
packages of your distro. For fedora this is php-devel, for debian
php-dev, other distribution should be similar.

When you have only one php install, it’s safe to run these commands in the source directory:

phpize
./configure
make

The phpize and php-config are the ones that are in
your path. When you have more then one php install or the phpize and
php-config scripts aren’t in your path then you should follow this
procedure. This example has php installed in /opt/php, this is the path
of the –prefix option given to the php configuration script.

export PHP_PREFIX=”/opt/php”
$PHP_PREFIX/bin/phpize
./configure –enable-eaccelerator=shared –with-php-config=$PHP_PREFIX/bin/php-config
make

For more information about the options for the configure script you should read the CompileConfiguration page.

After compilation, there should be a “eaccelerator.so” file in the modules subdirectory of the eAccelerator source directory.

Step 2. Installing eAccelerator

make install

This will copy the previously created eAccelerator binary to the php
extension directory. When this command ends, it will print out the
directory in which eAccelerator has been installed.

Step 3. Configuring eAccelerator

eAccelerator can be installed both as Zend or PHP extension. When
you install eAccelerator as a zend_extension you need to give the full
path to the eaccelerator.so library.

If you have /etc/php.d directory, you should copy eaccelerator.ini
to it and modify the default values. If not, you need to edit your
php.ini file (usually /etc/php.ini).

To install as Zend extension:

zend_extension=”/usr/lib/php4/eaccelerator.so”
eaccelerator.shm_size=”16″
eaccelerator.cache_dir=”/tmp/eaccelerator”
eaccelerator.enable=”1″
eaccelerator.optimizer=”1″
eaccelerator.check_mtime=”1″
eaccelerator.debug=”0″
eaccelerator.filter=”"
eaccelerator.shm_max=”0″
eaccelerator.shm_ttl=”0″
eaccelerator.shm_prune_period=”0″
eaccelerator.shm_only=”0″
eaccelerator.compress=”1″
eaccelerator.compress_level=”9″

If you use a thread safe build of PHP you must use “zend_extension_ts” instead of “zend_extension”.

To install as PHP extension:

extension=”eaccelerator.so”
eaccelerator.shm_size=”16″
eaccelerator.cache_dir=”/tmp/eaccelerator”
eaccelerator.enable=”1″
eaccelerator.optimizer=”1″
eaccelerator.check_mtime=”1″
eaccelerator.debug=”0″
eaccelerator.filter=”"
eaccelerator.shm_max=”0″
eaccelerator.shm_ttl=”0″
eaccelerator.shm_prune_period=”0″
eaccelerator.shm_only=”0″
eaccelerator.compress=”1″
eaccelerator.compress_level=”9″

Step 4. Creating cache directory

One last very important step is creating the cache directory that
you configured in the previous step. The default value is
/tmp/eaccelerator It’s easy because it’s writable to everyone, but it
isn’t very smart because on a lot of systems this directory is cleaned
on reboot. A better place would be /var/cache/eaccelerator. Create the
directory and make sure it’s writable for the user eAccelerator runs
under (usually the user which you webserver runs as).

A safe bet is making it world writable. A safer and cleaner way
would be to change the owner of the directory to the same user PHP runs
as (most of the time the same user as Apache or Lighttpd) and set 0644
permissions.

The lazy way:

mkdir /tmp/eaccelerator
chmod 0777 /tmp/eaccelerator

[Slashdot] [Digg] [Reddit] [del.icio.us] [Facebook] [Technorati] [Google] [StumbleUpon]
Friday, September 7th, 2007 Open Source, linux, technology

No comments yet.

Leave a comment

You must be logged in to post a comment.

Search

 

Chad's Twitter

Favorites