centos5.5下源码安装php(nginx下)

所需软件下载地址:

http://pan.baidu.com/s/1EUljg

1、解压软件包

php-5.4.24.tar.gz

libxml2-2.7.2.tar.gz

libiconv-1.14.tar.gz

2、安装libxml2-2.7.2

tar zxvf libxml2-2.7.2.tar.gz

cd libxml2-2.7.2

./configure --prefix=/usr/local/libxml2

make

make install

安装libiconv-1.14

tar zxvf libiconv-1.14.tar.gz

cd libiconv-1.14

./configure --prefix=/usr/local/libiconv

make

make install

3、安装PHP

tar zxvf php-5.4.24.tar.gz

cd php-5.4.24

./configure --prefix=/usr/local/php --with-mysql=/usr/local/mysql --with-libxml-dir=/usr/local/libxml2 --with-iconv=/usr/local/libiconv --enable-fpm

make

make install

4、配置PHP:

CPOPY PHP的配置文件(从PHP源码包中)

cp php-5.4.24/(php.ini-development php.ini-production中的任何一个) /usr/local/php/lib/php.ini

修改php.ini文件 register_globals = On

修改php-fpm.conf

cd /usr/local/php/etc/

mv php-fpm.conf.default php-fpm.conf

找到 ;pm.status_path = /status 去掉前面的分号

5、新建PHP项目目录并配置

新增/home/www目录用于存放php文件

mkdir /home/www

vi /usr/local/nginx/conf/nginx.conf

修改nginx.conf将php那段改为

# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000

#

location ~ \.php$ {

root /home/www;

fastcgi_pass 127.0.0.1:9000;

fastcgi_index index.php;

fastcgi_param SCRIPT_FILENAME /home/www$fastcgi_script_name;

include fastcgi_params;

}

location ~ ^/status$ {

fastcgi_pass 127.0.0.1:9000;

fastcgi_param SCRIPT_FILENAME $fastcgi_script_name;

include fastcgi_params;

}

location ~ status.html$ {

root /home/www;

}

复制status.html 到 /home/www 目录

cp /home/soft/php-5.4.24/sapi/fpm/status.html /home/www/

5、运行

/usr/local/php/sbin/php-fpm &

/usr/local/nginx/sbin/nginx -s reload

6、测试php是否成功安装

新建phpinfo.php 内容为

在浏览器中输入:服务器地址/phpinfo.php

如果能正常显示出php的信息,则说明Nginx+PHP安装成功!

======================php安装扩展================================

使用php的常见问题是:编译php时忘记添加某扩展,后来想添加扩展,但是因为安装php后又装了一些东西如PEAR等,不想删除目录重装,别说,php还真有这样的功能。

如我想增加bcmath支持,这是一个支持大整数计算的扩展。windows自带而且内置,linux“本类函数仅在 PHP 编译时配置了 --enable-bcmath 时可用”(引号内是手册中的话)

幸好有phpize,方法是,要有与现有php完全相同的php安装源码包。

展开后进入里面的ext/bcmath目录

然后执行/usr/local/php/bin/phpize,这是一个可执行的文本文件,会发现当前目录下多了一些configure文件,

如果没报错,则执行./configure --with-php-config=/usr/local/php/bin/php-config(注意要确保/usr/local/php/bin/php-config存在)

如果没有报错,则make,再make install ,然后它告诉你一个目录

你把该目录下的bcmath.so拷贝到你php.ini中的extension_dir指向的目录中,

修改php.ini,在最后添加一句extension=bcmath.so

重启php-fpm和nginx即可

=================安装pdo_mysql扩展================

cd /home/soft/php-5.4.24/ext/pdo_mysql

/usr/local/php/bin/phpize

./configure --with-php-config=/usr/local/php/bin/php-config --with-pdo-mysql=/usr/local/mysql

make && make install

此时在/usr/local/php/lib/php/extensions里就会多了个no-debug-non-zts-20100525文件夹,它里面就生成了一个pdo_mysql.so

把.so文件移至/usr/local/php/lib/php/extensions中

修改php.ini,加入扩展语句

extension_dir="/usr/local/php/lib/php/extensions";

extension=pdo_mysql.so

6.重启php-fpm和nginx就ok了,在phpinfo信息里会看到,pdo_mysql的扩展支持了。

=============安装memcached服务端和php的memcache扩展========

1、先安装服务端

cd libevent-2.0.21-stable

mkdir /usr/local/libevent

./configure --prefix=/usr/local/libevent

make

make install

tar zxvf memcached-1.4.17.tar.gz

cd memcached-1.4.17

mkdir /usr/local/memcached

./configure --prefix=/usr/local/memcached --with-libevent=/usr/local/libevent

make

make install

开启(memcached是守护进程的)

/usr/local/memcached/bin/memcached -d -m 10 -u root -l 192.168.133.10 -p 11211 -c 256 -P /tmp/memcached.pid

重启nginx就ok了

2、安装PHP扩展

tar zxvf memcache-3.0.8.tgz

cd memcache-3.0.8

/usr/local/php/bin/phpize

./configure --enable-memcache --with-php-config=/usr/local/php/bin/php-config

make

make install

此时在/usr/local/php/lib/php/extensions里就会多了个no-debug-non-zts-20100525/,它里面就生成了一个memcache.so

把.so文件移至/usr/local/php/lib/php/extensions中

修改php.ini,加入扩展语句

extension=memcache.so

重启php-fpm和nginx就ok了


你可能感兴趣的:(nginx,centos5.5,安装php)