Centos配置Apache+Mysql+Php5.3.3+ZendGuardLoader v3.3+Memcached及其扩展+eAccelerator v1.0

(1): yum源配置

CentOS系统自带的YUM源更新太慢,所以更新使用了163的YUM源

1: 首先备份/etc/yum.repos.d/CentOS-Base.repo
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup

2:下载对应操作系统版本repo文件, 放入/etc/yum.repos.d/
此处以CentOS6为例
下载地址 http://mirrors.163.com/.help/CentOS6-Base-163.repo

3: 运行以下命令生成缓存
yum clean all
yum makecache

(2): yum 安装Apahce, PHP , Mysql , 以及php连接mysql库组件
yum -y install httpd httpd-devel mysql mysql-server php php-mysql
或者 yum -y install httpd-* mysql-* php-*
设置mysql管理员口令
php -v 查看下php版本 发现php版本为php5.3.3

(3) 安装 ZendGuardLoader

从PHP5.3开始如果要支持ZendGuard加密的PHP代码,必须安装Zend Guard Loader,老的zend optimizer将不被支持。

1.Zend Guard Loader官方下载地址:
i386版下载地址: http://downloads.zend.com/guard/5.5.0/ZendGuardLoader-php-5.3-linux-glibc23-i386.tar.gz
x86_64版下载地址:http://downloads.zend.com/guard/5.5.0/ZendGuardLoader-php-5.3-linux-glibc23-x86_64.tar.gz
CentOS i386版的PHP的模块默认位置:/usr/lib/php/modules
CentOS x86_64版的PHP的模块默认位置:/usr/lib64/php/modules

2.从Zend.com下载最新的Zend Guard Loader到Linux服务器并解压缩,本文以i386版为例进行讲解安装过程,注意阅读生成目录下的README文件。
cd /usr/local/src
wget http://downloads.zend.com/guard/5.5.0/ZendGuardLoader-php-5.3-linux-glibc23-i386.tar.gz
tar -zxvf ZendGuardLoader-php-5.3-linux-glibc23-i386.tar.gz
cd /usr/local/src/ZendGuardLoader-php-5.3-linux-glibc23-i386/php-5.3.x
cp ZendGuardLoader.so /usr/lib/php/modules/

3.在/etc/php.d/目录下创建文件zend.ini,内容如下:
zend_extension=/usr/lib/php/modules/ZendGuardLoader.so
或者
vi /etc/php.ini
末尾增加:
[zend.loader]
zend_loader.enable=1
zend_extension=/usr/lib/php/modules/ZendGuardLoader.so

4.重启httpd即可
service httpd restart

5.然后php -v看看Zend Guard Loader是否安装成功。
# php -v
若显示with Zend Guard Loader v3.3 表示安装成功 。

(4) 安装memcached
Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载。它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态、数据库驱动网站的速度。

1: 安装gcc gcc-c++环境
yum -y install gcc gcc-c++

2: 安装libevent
# wget http://www.monkey.org/~provos/libevent-2.0.12-stable.tar.gz
# tar -zxvf libevent-2.0.12-stable.tar.gz
# cd libevent-2.0.12-stable
# ./configure --prefix=/usr/local/libevent
# make&&make install
测试libevent是否安装成功
# ls -al /usr/lib | grep libevent

3: 安装memcached
# wget http://memcached.org/files/memcached-1.4.20.tar.gz
#tar -zxvf memcached-1.4.20.tar.gz
# cd memcached-1.4.20
#./configure --prefix=/usr/local/memcached --with-libevent=/usr/local/libevent
# make&&make install
测试memcached是否安装成功
#ls -al /usr/local/memcached/bin/mem*

4: 配置memcached服务启动
手动启动memcached服务
# service memcached start
开机自动启动服务
#chkconfig memcached on
我们通过ps查看memcached服务进程信息,可以看到
# ps -ef |grep memcached
memcached -d -p 11211 -u memcached -m 64 -c 1024 -P /var/run/memcached/memcached.pid
这个是默认的memcached的参数信息。
memcached参数的含义:
-d选项是启动一个守护进程。
-m是分配给Memcache使用的内存数量,单位是MB 。
-u是运行Memcache的用户,一般是root 。
-l是监听的服务器IP地址。
-p是设置Memcache监听的端口,最好是1024以上的端口。
-c选项是最大运行的并发连接数,默认是1024,按照你服务器的负载量来设定。
-P是设置保存Memcache的pid文件。

此时,我们通过ps -ef|grep memcached查看到有两个memcached.pid进程在运行,我们可以执行 killall memcached命令将它们取消掉。我们不再使用service memcached start命令来启动memcached服务了,我不想出现多个memcached进程了,容易冲突。 我这里使用的是/tmp/memcached.pid , 接下来我们设置此进程在开机或者系统启动的时候自动加载此进程。 vi /etc/rc.local在文件末尾加入/usr/local/memcached/bin/memcached -d -m 100 -u root -l 192.168.1.251 -p 1024 -P /tmp/memcached.pid 保存配置。

自定义memcached服务配置:
# ps -ef |grep memcached
# killall memcached
# /usr/local/memcached/bin/memcached -d -m 100 -u root -l 192.168.1.251 -p 1024 -P /tmp/memcached.pid
# echo "/usr/local/memcached/bin/memcached -d -m 100 -u root -l 192.168.1.251 -p 1024 -P /tmp/memcached.pid" > /etc/rc.local
# reboot
# ps -ef |grep memcached

5: 查看php扩展中是否有memcache 若有的话,说明memcached安装成功了
# php -m|grep memcache
memcache

(5) 安装memcached的php扩展
php的扩展memcache,不支持cas,所以我们要装memcached扩展,memcached扩展是基于libmemcached,所以要先安装libmemcached
php安装对memcached的支持
php有两个版本的memcached客户端

1.先安装libmemcached

下载地址:https://launchpad.net/libmemcached/1.0/1.0.18/+download/libmemcached-1.0.18.tar.gz
解压后,编译 ./configure --prefix=/usr/local/libmemcached --with-memcached
然后执行 make&&make install 安装

2.安装php-memcached客户端
下载地址http://pecl.php.net/get/memcached-2.2.0.tgz
# wget http://pecl.php.net/get/memcached-2.2.0.tgz
# tar -zxvf memcached-2.2.0.tgz
# cd memcached-2.2.0
# /usr/bin/phpize
# ./configure --enable-memcached --with-php-config=/usr/bin/php-config --with-libmemcached-dir=/usr/local/libmemcached
# make&&make install
# make test
安装完成后,提示Installing shared extensions: /usr/lib/php/modules/
# ll /usr/lib/php/modules
会看到 mbstring.so和memcached.so 模块
说明成功

3. 修改php.ini添加extension = memcached.so就可以了。
# vi /etc/php.ini 添加到此配置文件的末尾就可以了

4. # php -m |grep memcache
memcache
memcached

(6) 用php探针测试

1
2
3
<?php
phpinfo();
?>

会发现有 memcache 和 memcached 两个模块的php扩展
当我不做第五步的时候,只有memcache模块扩展。

(7) eaccelerator的配置
下载:# wget --no-check-certificate https://codeload.github.com/eaccelerator/eaccelerator/legacy.tar.gz/master
解压: # tar -zxvf master
创建缓存目录 # mkdir /tmp/eaccelerator
加载phpize # phpize
编译配置 # ./configure --enable-eaccelerator=shared --with-php-config=/usr/bin/php-config
安装 # make&&make install
提示: Installing shared extensions: /usr/lib/php/modules/ 表示安装完成,这时候在进入到/usr/lib/php/modules/这个目录里面会看到eaccelerator.so模块。在php.ini配置文件中加入eaccelerator参数配置。

eaccelerator的两种安装模式

1: 安装为 Zend extension 模式:
[eaccelerator]
zend_extension="/usr/lib/php/modules/eaccelerator.so"
eaccelerator.shm_size="128"
eaccelerator.cache_dir="/tmp/eaccelerator"
eaccelerator.enable="1"
eaccelerator.optimizer="1"
eaccelerator.check_mtime="1"
eaccelerator.debug="0"
eaccelerator.log_file = "/var/log/httpd/eaccelerator_log"
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"
如果你使用了thread safe模式安装的PHP,你必须使用 “zend_extension_ts” 替换第一行的 “zend_extension”。

2: 安装为 PHP extension 模式:(这是大部分采用的方式)
[eaccelerator]
extension="eaccelerator.so"
eaccelerator.shm_size="128"
eaccelerator.cache_dir="/tmp/eaccelerator"
eaccelerator.enable="1"
eaccelerator.optimizer="1"
eaccelerator.check_mtime="1"
eaccelerator.debug="0"
eaccelerator.log_file = "/var/log/httpd/eaccelerator_log"
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"
安装完毕之后 ,执行# php -v 能查看到类似“ with eAccelerator v1.0-dev, Copyright (c) 2004-2012 eAccelerator, by eAccelerator ”的信息 ,其中有eAccelerator的版本号。

相关新闻

联系我们

全国服务热线

400-033-9553

电子邮件:admin@example.com
工作时间:09:00-17:00 周一至周五

在线客服
关注微信
关注微信
分享本页
返回顶部