Enable caching functions get and put in eAccelerator
by
on 10-16-2007 at 06:33 AM (5598 Views)
eAccelerator_get and eAccelerator_put functions are now disabled by default. These functions have been disabled because when leaving them on without any precautions these functions can be used for a local DoS attack by keep putting data in shared memory.
http://eaccelerator.net/ticket/37
The correct way to enable it is configure with the following atribute
Configure and install secuenceCode:--with-eaccelerator-shared-memory
Code:export PHP_PREFIX="/usr" $PHP_PREFIX/bin/phpize ./configure --enable-eaccelerator=shared --with-php-config=$PHP_PREFIX/bin/php-config --with-eaccelerator-shared-memory make make install
Test page with functions and cached data
Output from my serverPHP Code:<?php
$rfunc = get_extension_funcs( 'eaccelerator' );
print_r($rfunc);
function ea ($str)
{
eaccelerator_put("testkey", $str);
for ($i = 0; $i < 1e5; $i++)
{
$r = eaccelerator_get("testkey");
}
return $r;
}
$str = str_repeat("1234567890", 1024); // 10 KB
$r = ea($str);
echo strlen($r);
?>
vBSEO Working with eAcceleratorPHP Code:Array (
[0] => eaccelerator_put
[1] => eaccelerator_get
[2] => eaccelerator_rm
[3] => eaccelerator_gc
[4] => eaccelerator_lock
[5] => eaccelerator_unlock
[6] => eaccelerator_caching
[7] => eaccelerator_optimizer
[8] => eaccelerator_clear
[9] => eaccelerator_clean
[10] => eaccelerator_info
[11] => eaccelerator_purge
[12] => eaccelerator_cached_scripts
[13] => eaccelerator_removed_scripts
[14] => eaccelerator_list_keys
[15] => eaccelerator_encode
[16] => eaccelerator_load
[17] => _eaccelerator_loader_file
[18] => _eaccelerator_loader_line
)
10240
![]()




