这个主要描述下一些常用插件和工具的安装和配置。
eAccelerator是一个自由开放源码php加速器,优化和动态内容缓存,
提高了php脚本的缓存性能,使得PHP脚本在编译的状态下,
对服务器的开销几乎完全消除。 它还有对脚本起优化作用,
以加快其执行效率。使您的PHP程序代码执效率能提高1-10倍;
1.安装eAccelerator
如果只有一个php安装,那么可以直接在eAccelerator目录下执行
phpize
./configure
make
当你有多个php安装或者phpize不再你的当前路径中的时候,那么
[gaohu@tigertall ~]$ tar -jxf eaccelerator-0.9.6.1.tar.bz2
[gaohu@tigertall ~]$ cd eaccelerator-0.9.6.1
[gaohu@tigertall ~]$ su -
[root@tigertall ~]# cd /home/gaohu/eaccelerator-0.9.6.1
[root@tigertall eaccelerator-0.9.6.1]# /usr/local/bin/phpize
Configuring for:
PHP Api Version: 20090626
Zend Module Api No: 20090626
Zend Extension Api No: 220090626
/usr/local/bin/phpize命令一定要放在eaccelerator目录下执行,
不然会报 Cannot find config.m4 的错误。
[root@tigertall eaccelerator-0.9.6.1]# ./configure \
--enable-eaccelerator=shared \
--with-php-config=/usr/local/bin/php-config
[root@tigertall eaccelerator-0.9.6.1]# make
[root@tigertall eaccelerator-0.9.6.1]# make install
得到如下的输出,安装就成功了
Installing shared extensions:
/usr/local/lib/php/extensions/no-debug-zts-20090626/
如果php编译的是非线程安全的,那么可能会输出在
/usr/local/lib/php/extensions/no-debug-non-zts-20090626/
自己要注意下。
2.配置eAccelerator
eAccelerator可以被配置为Zend扩展,或者是php的扩展。当被配置为Zend扩展时,
需要使用完整目录来指示eaccelerator.so链接库的路径。
如果存在php.d目录,则把eAccelerator.ini拷贝进去,并进行设置。
否则的话,则编辑php.ini文件。
安装为zend扩展:
zend_extension="/usr/lib/php4/eaccelerator.so"
eaccelerator.shm_size="16"
eaccelerator.cache_dir=" /var/cache/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"
eaccelerator.allowed_admin_path="/usr/local/apache2/htdocs/control.php"
如果你使用了线程安全的php构建,那么需要使用
"zend_extension_ts" 来替换上面的 "zend_extension".
安装为php扩展:
extension="eaccelerator.so"
eaccelerator.shm_size="16"
eaccelerator.cache_dir="/var/cache/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"
eaccelerator.allowed_admin_path="/usr/local/apache2/htdocs/control.php"
把以上内容粘贴到php.ini文件中即可。
上述变量的意思:
eaccelerator.shm_size="16"
解释:eaccelerator可使用的共享内存大小(单位为MB)。
eaccelerator.cache_dir="/tmp/eaccelerator"
解释:缓存路径
eaccelerator.enable="1"
解释:打开或者关闭eaccelerator。"1"指打开,"0"指关闭。默认值为"1"。
eaccelerator.optimizer="1"
解释:打开或者关闭代码优化,开启可以加快代码的执行速度。
"1"指打开,"0"指关闭。默认值为"1"。
eaccelerator.check_mtime="1"
解释:当打开此项时,eaccelerator会在每次请求时检查php文件的修改时间,
看其是否被修改过,这会耗费一点时间,如果php文件被修改过,
eaccelerator会重新编译缓存该php文件。当关闭此项时,如果php文件被修改,
则需要手工删eaccelerator缓存,才能显示被修改的php文件。
"1"指打开,"0"指关闭。默认值为"1"。
eaccelerator.debug="0"
解释:打开或者关闭调试记录。当打开时,eaccelerator会将对一个缓存文件的
每次请求都写进log。打开此项只对调试eaccelerator是否有BUG时有益处。
"1"指打开,"0"指关闭。默认值为"0"。
eaccelerator.log_file="/usr/local/apache2/logs/eaccelerator_log"
解释:日志文件
eaccelerator.filter=""
解释:决定哪些PHP文件应该被缓存。可以指定一个范围(比如"*.php *.phtml"),
这样被指定的文件就会被缓存。如果该范围以!开头,
被指定的文件就不会被缓存。默认值为"",表示缓存所有的PHP文件。
eaccelerator.shm_max="0"
解释:一个用户使用例如eaccelerator_put之类的函数能够往
共享内存中加载的最大数据。默认值为"0",表示不限制。(单位为字节)
eaccelerator.shm_ttl="0"
解释:当没有足够的空闲共享内存去尝试缓冲一个新脚本时,将删除至少
在shm_ttl秒之前没有被访问过的文件。默认值为"0",表示不尝试从
共享内存中删除任何旧的脚本。(单位为秒)
eaccelerator.shm_prune_period="0"
解释:当没有足够的空闲共享内存去尝试缓冲一个新脚本时,将删所有旧脚本,
前提是这个尝试在超过shm_prune_period秒之前被执行过。默认值为"0",
表示不尝试从共享内存中删除任何旧的脚本。(单位为秒)
eaccelerator.shm_only="0"
解释:打开或者关闭在磁盘上缓存编译过的脚本。这个参数对会话数据
和内容缓存没有效果。默认值为"0",表示使用磁盘和共享内存来缓存。
eaccelerator.compress="1"
解释:打开或者关闭缓存内容压缩。"1"指打开,"0"指关闭。默认值为"1"。
eaccelerator.compress_level="9"
解释:内存压缩的级别。默认值为"9",表示最大压缩。
eaccelerator.allowed_admin_path="/usr/local/apache2/htdocs/control.php"
解释:eaccelerator控制文件路径,这样,可以通过
http://your-web-server/control.php获取图形化访问eaccelerator。
要使用这个功能,要把安装源代码目录下的control.php拷贝到
/usr/local/apache2/htdocs/目录下,并设置control.php文件中
的用户和密码,以后,则需要文件中的用户名和密码登陆。
同时调整php.ini中扩展插件的目录为上述的输出
; Directory in which the loadable extensions (modules) reside.
; http://php.net/extension-dir
; extension_dir = "./"
; On windows:
; extension_dir = "ext"
extension_dir = "/usr/local/lib/php/extensions/no-debug-zts-20090626/"
3.创建缓存目录
目录要与上面配置文件中指定的一致,并且,要确保webserver的运行用户对这个
目录有可写入的权限。
[root@tigertall eaccelerator-0.9.6.1]# mkdir /var/cache/eaccelerator
比如我的apache守护进程是有daemon用户来执行的(可以在httpd.conf中找到)
那么,我切换下目录的属主
[root@tigertall eaccelerator-0.9.6.1]# chown -R daemon.daemon /var/cache/eaccelerator
4.重启apache
重启apache,以启用eaccelerator扩展。
访问http://your-web-server/phpinfo.php
或者在命令行执行 php -v
可以看到eaccelerator已经启用的信息。
ImageMagick是一套功能强大、稳定而且免费的工具集和开发包,
可以用来读、写和处理超过89种基本格式的图片文件,
包括流行的TIFF, JPEG, GIF, PNG, PDF以及PhotoCD等格式。
ImageMagick比gd提供了更好的图像处理质量。推荐使用。
下载ImageMagick的源代码。
1.解压缩
[gaohu@tigertall ~]$ tar -zxf ImageMagick.tar.gz
2.编译安装
[gaohu@tigertall ~]$ tar -zxf ImageMagick.tar.gz
[gaohu@tigertall ~]$ cd ImageMagick-6.6.3-0/
[gaohu@tigertall ImageMagick-6.6.3-0]$ ./configure
[gaohu@tigertall ImageMagick-6.6.3-0]$ make
[gaohu@tigertall ImageMagick-6.6.3-0]$ sudo make install
3.下载imagick
这个是php的一个支持ImageMagick的扩展。
下载地址:http://pecl.php.net/package/imagick
4.编译安装imagick
这里,像安装eaccelerator一样,把imagick安装为php的一个扩展。
[gaohu@tigertall ~]$ tar -zxvf imagick-3.0.0RC2.tgz
[gaohu@tigertall ~]$ cd imagick-3.0.0RC2
[gaohu@tigertall imagick-3.0.0RC2]$ phpize
[gaohu@tigertall imagick-3.0.0RC2]$ ./configure \
--with-php-config=/usr/local/bin/php-config
[gaohu@tigertall imagick-3.0.0RC2]$ make
[gaohu@tigertall imagick-3.0.0RC2]$ sudo make install
Installing shared extensions:
/usr/local/lib/php/extensions/no-debug-zts-20090626/
Installing header files: /usr/local/include/php/
4.配置imagick
[gaohu@tigertall ~]$ sudo vi /usr/local/lib/php.ini
添加以下:
extension = "imagick.so"
保存退出。
ImageMagick和imagick的安装完成。
phpMyAdmin是一个网络的数据库管理平台,这个跟php是没有什么关系的,
不过使用起来也是比较方便的,所以推荐大家使用。
下载代码后,直接把代码解压到网站根目录下的一个文件夹,就可以使用了。
[gaohu@tigertall ~]$ cd /usr/local/apache2/htdocs/
[gaohu@tigertall htdocs]$ tar -jxf /home/gaohu/phpMyAdmin-3.3.4-all-languages.tar.bz2
[gaohu@tigertall htdocs]$ mv phpMyAdmin-3.3.4-all-languages phpMyAdmin
[gaohu@tigertall htdocs]$ cd phpMyAdmin/
[gaohu@tigertall phpMyAdmin]$ cp config.sample.inc.php config.inc.php
然后就可以以http://your-web-server/phpMyAdmin来访问phpMyAdmin的功能了。
我所用到的就是这么多了,如果有更好的,也希望大家推荐给我。^_^。
下面就要再次安装meidiawiki了,呵呵 。
<201007219 高虎 于杭州 博客园>