安装PHP缓存、加速模块
LNMP环境
根据之前部署过的LNMP环境配置
配置环境变量 LC_ALL
echo 'export LC_ALL=C' >> /etc/profile
source /etc/profile #配置环境变量生效
yum install -y perl-devel #安装依赖包
如果不配置环境变量,安装加速器时会报错
!!!opcache在php5.6以上是自带安装的,所以就不安装操作了!!!
XCache
cd /mnt/app
#下载xcache wget http://xcache.lighttpd.net/pub/Releases/3.2.0/xcache-3.2.0.tar.gz tar xf xcache-3.2.0.tar.gz /application/php/bin/phpize ./configure --enable-xcache --with-php-config=/application/php/bin/php-config make && make install ll /application/php5.6/lib/php/extensions/no-debug-non-zts-20131226/ 有xcache 表示安装成功
eAccelerator
eAcceleator仅支持PHP5.5以下
cd /mnt/app/
wget https://github.com/downloads/eaccelerator/eaccelerator/eaccelerator-0.9.6.1.tar.bz2
tar xf eaccelerator-0.9.6.1.tar.bz2
cd eaccelerator-0.9.6.1
/application/php/bin/phpize
./configure --enable-eaccelerator=shared --with-php-config=/application/php/bin/php-config
make
make install
Memcached(PHP客户端)
cd /mnt/app/
wget http://pecl.php.net/get/memcache-2.2.7.tgz
tar xf memcache-2.2.7.tgz
cd memcache-2.2.7
/application/php/bin/phpize
./configure --enable-memcache --with-php-config=/application/php/bin/php-config
make
make install
PDO_Mysql扩展模块
PDO扩展为PHP访问数据库定义了一个轻量级一致性的接口,它提供了一个数据访问抽象层,无论是什么数据库都可以通过一致的函数执行查询并获取数据。
cd /mnt/app
wget http://pecl.php.net/get/PDO_MYSQL-1.0.2.tgz
tar xf PDO_MYSQL-1.0.2.tgz
cd PDO_MYSQL-1.0.2
/application/php/bin/phpize
./configure --with-php-config=/application/php/bin/php-config --with-pdo-mysql=/application/mysql
ln -s /application/mysql/include/* /usr/local/include/ #不做这个软连接可能会报错
make && make install
ImageMaguck图像软件
下载地址
download.chinaunix.net/download/0001000/95.shtml
cd /mnt/app
#在网页上下载上传到服务器
tar xf ImageMagick-6.7.9-9.tar.xz
cd ImageMagick-6.7.9-9
./configure
make
make install
Imagick PHP
Imagick PHP依赖于ImageMaguck,所以需要先安装ImageMaguck
cd /mnt/app
wget http://pecl.php.net/get/imagick-3.4.3.tgz
tar xf imagick-3.4.3.tgz
cd imagick-3.4.3/
/application/php/bin/phpize
./configure --with-php-config=/application/php/bin/php-config
make
make install
ll /application/php5.6/lib/php/extensions/no-debug-non-zts-20131226/
配置加速&缓存插件模块
配置 Memcache/PDO_MYSQL/imagick模块生效
修改php.ini
cd /application/php/lib/
cp php.ini php.ini.bak #修改前先备份配置文件
vi php.ini
/extensions_dir="./" #vi编辑器搜索extensions_dir="./"
修改为:extensions_dir="/application/php5.6/lib/php/extensions/no-debug-non-zts-20131226"
按Shift+G跳到文件末尾
#添加:
extension = memcache.so
extension = pdo_mysql.so
extension = imagick.so
#重启php
pkill php-fpm
netstat -lntup | grep 9000
/application/php/sbin/php-fpm
netstat -lntup | grep 9000
之前配置php有test_info.php文件,再次访问这个页面,查看是否有之前安装过的加速和缓存模块
配置XCache生效
#先在php.ini文件中加入分界线
echo ';xcache ------------------------------------------------------------' >>/applination/php/lib/php.ini
以下为配置xcache参数(根据硬件配置大小)
vim /mnt/app/xcache-3.2.0/xcache.ini
xcache.size = 256M
xcache.count = 服务器cpu数量
xcache.gc_interval = 3600
xcache.ttl = 86400
xcache.var_size = 64M
保存退出
cat /mnt/app/xcache-3.2.0/xcache.ini >>/application/php/lib/php.ini
/application/php/bin/php -v
##显示信息
PHP 5.6.36 (cli) (built: Jun 14 2018 14:50:30)
Copyright (c) 1997-2016 The PHP Group
Zend Engine v2.6.0, Copyright (c) 1998-2016 Zend Technologies
with XCache v3.2.0, Copyright (c) 2005-2014, by mOo
with XCache Cacher v3.2.0, Copyright (c) 2005-2014, by mOo
##
重启php
pkill php-fpm
/application/php/sbin/php-fpm
配置xcache登录用户
先使用md5sum生成加密的密码
echo -n "密码"|md5sum
复制加密后的密码
vim /application/php/lib/php.ini
[xcache.admin]
xcache.admin.enable_auth = On
xcache.admin.user = "用户名"
xcache.admin.pass = "加密后的密码"
拷贝Xcache软件
cd /mnt/app/xcache-3.2.0
cp -a htdocs/ /application/nginx/html/www/xadmin
chown -R nginx.nginx /application/html/www/xadmin
pkill php-fpm
/application/php/sbin/php-fpm
访问http://www.hello.com/xadmin/index.php
Zend OPcache
编辑php.ini
加入:
[opcache]
zend_extension=/application/php5.6/lib/php/extensions/no-debug-non-zts-20131226/opcache.so
;extension=opcache.so
opcache.memory_consumption=32
opcache.interned_strings_buffer=8
opcache.max_accelerated_files=1000
opcache.revalidate_freq=60
opcache.fast_shutdown=1
opcahce.enable_cli=1
查看生效结果
/application/php/bin/php -v
已经包含了opcache
重启php
pkill php-fpm
/application/php/sbin/php-fpm
访问phpinfo查看是否运行
!!!不建议多个缓存加速器同时运行