php编译安装,cgi启动,以及memcache扩展编译安装.


先安装必须的依赖库(参数-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

 

今天的练习到此结束...不得不说服务器上的东西还是编译安装的好,能全局把控.

 

 

 

 

 

 

 

 

 

 

 

 

相关内容