先安装必须的依赖库(参数-y:apt-get命令参数详解 http://hi.baidu.com/usen68/item/942891e5de324f0f8d3ea885):
1 sudo apt-get -y install autoconf && 2 sudo apt-get -y install libxml2-dev && 3 sudo apt-get -y install bzip2 && 4 sudo apt-get -y install libcurl3-openssl-dev && 5 sudo apt-get -y install libcurl4-gnutls-dev && 6 sudo apt-get -y install libjpeg-dev && 7 sudo apt-get -y install libpng-dev && 8 sudo apt-get -y install libxpm-dev && 9 sudo apt-get -y install libfreetype6-dev && 10 sudo apt-get -y install libt1-dev && 11 sudo apt-get -y install libmcrypt-dev && 12 sudo apt-get -y install libmysql++-dev && 13 sudo apt-get -y install libxslt1-dev && 14 sudo apt-get -y install libbz2-dev
软链接库文件:
cd /usr/lib && ln -s /usr/lib/x86_64-linux-gnu/libXpm.so . && ln -s /usr/lib/x86_64-linux-gnu/libXpm.a . && ln -s /usr/lib/x86_64-linux-gnu/libXpm.so.4 . && ln -s /usr/lib/x86_64-linux-gnu/libXpm.so.4.11.0 . && echo ‘successful!‘
下载最新php源码,编译安装:
cd /opt && sudo mkdir src && cd src && sudo wget http://us1.php.net/distributions/php-5.4.14.tar.gz && \ sudo tar zxvf php-5.4.14.tar.gz && cd php-5.4.14 && sudo ./configure --prefix=/usr/local/php --with-mysql=mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-config-file-path=/usr/local/php/etc --with-zlib --with-curl --with-curlwrappers --with-mcrypt --with-gd --with-openssl --with-mhash --with-xmlrpc --with-jpeg-dir --with-png-dir --with-xpm-dir --with-freetype-dir --with-zlib-dir --enable-shared --enable-fpm --enable-xml --disable-rpath --enable-safe-mode --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --enable-mbregex --enable-mbstring --enable-gd-native-ttf --enable-pcntl --enable-sockets --enable-zip --enable-soap
!注意
其中重点参数:
--prefix=/usr/local/php
指定 php 安装目录
--with-config-file-path=/usr/local/php/etc
指定php.ini位置
--with-MySQL=/usr/local/mysql(新版php不推荐)
mysql安装目录,对mysql的支持
--with-mysqli=/usr/local/mysql/bin/mysql_config(新版php不推荐)
mysqli扩展技术不仅可以调用MySQL的存储过程、处理MySQL事务,而且还可以使访问数据库工作变得更加稳定。
关于 mysqlnd的解释:http://baike.baidu.com/view/2630684.htm?fr=aladdin
不出问题的话就执行最后一步编译安装:
sudo make && sudo make install
启动php的cgi (注意配置php-fgm.conf的启动账户和组,否则报错,详情:http://www.cnblogs.com/argb/p/3604340.html)
sudo /usr/local/php/sbin/php-fpm -c /usr/local/php/etc/php.ini -y /usr/local/php/etc/php-fpm.conf
cgi的性能优化:http://hi.baidu.com/cpu686/item/84fbb7f6bcb4f8ce521c2669
添加php的memcache 支持 (编译安装)
下载最新的拓展源码 http://pecl.php.net/package/memcache
1 tar -zxvf memcache-2.2.3.tgz 2 cd memcache-2.2.3/ 3 sudo /usr/local/php526/bin/phpize 4 sudo ./configure –with-php-config=/usr/local/php/bin/php-config 5 make 6 make install 7 cd ../
再到php.ini里面,再extension_dir = “./”的后面添加一行
extension="memcache.so";
即可
然后
sudo netstat -anp | grep "php"
kill 掉phpcgi进程从新启动cgi sudo /usr/local/php/sbin/php-fpm -c /usr/local/php/etc/php.ini -y /usr/local/php/etc/php-fpm.conf
今天的练习到此结束...不得不说服务器上的东西还是编译安装的好,能全局把控.