|  | 
 
| YUM安装Nginx并编译安装PHP5.3.8 with PHP-FPM 一、Nginx安装
 安装Nginx可以采用YUM方法,Nginx官方提供的源可以保证安装最新版本的稳定程序
 vim /etc/yum.repos.d/CentOS-Base.repo 添加以下YUM源信息
 
 [nginx]更新YUM缓存name=nginx repo
 baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
 gpgcheck=0
 enabled=1
 
 
 yum makecache安装Nginx
 
 yum install nginx控制Nginx运行:
 通过YUM安装完毕Nginx后可以使用service命令管理,目前支持以下参数
 
 service nginx {start|stop|restart|condrestart|try-restart|force-reload|upgrade|reload|status|help|configtest}二、编译安装PHP5.3.8 with PHP-FPM
 PHP需要编辑安装,YUM自带源版本比较低,我们可以编译安装最新版PHP,从PHP5.3开始官方已经自带PHP-FPM功能,安装的时候带上参数 “–enable-fpm”即可
 /php.5.3源文件目录/下执行
 
 ./configure –enable-fpm安装过程中可能提示找不到libxml2安装位置,需要先编译安装libxml2,请执行以下命令:make
 make install
 
 
 yum install libxml2重启PHP-FPMyum install libxml2-devel
 
 php5.3.8 的PHP-FPM不再支持php-fpm 补丁具有的 /usr/local/php/sbin/php-fpm (start|stop|reload)等命令,需要使用信号控制:
 INT, TERM    立刻终止
 QUIT    平滑终止
 USR1    重新打开日志文件
 USR2    平滑重载所有worker进程并重新载入配置和二进制模块
 
 平滑重启: kill -USR2 `cat /var/run/php-fpm.pid`三、为PHP编译添加新模块
 编译php的时候可以通过命令 “./configure –with-libxxx”来编译安装相关模块,安装完毕后如果还需要添加模块可以通过以下步骤完成模块添加,我们以添加curl模块为例:
 
 #cd /PHP源文件目录/ext/curlQ&A#phpize (为重新编译新模块准备PHP环境参数)
 #./configure –with-php-config=/php.ini文件路径/(根据当前php.ini环境编译生成模块,可略)
 #make (此步将在 /PHP源文件目录/ext/curl/module/目录下面生成curl.so文件)
 #cp /PHP源文件目录/ext/curl/module/curl.so /php的extension目录下/
 #vim php.ini 添加 extension=curl.so
 php-fpm重新加载php.ini即可生效
 
 
 默认PHP的配置文件是放在“/usr/local/lib/”目录下面的,默认安装采用php默认配置,无php.ini文件,请执行以下命令生成php.ini文件:
 #cp /php源文件目录/php.ini-production /usr/local/lib/php.ini
Nginx执行静态文件正常,执行PHP文件报404错误:通常404错误是由php-fpm执行文件路径错误,请确认是否正确设置 “SCRIPT_FILENAME”参数,请修改”/etc/nginx/conf.d/default.conf”中参数:fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;改为fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;location 的 root设置为绝对路径
 
 
 YUM安装Nginx并编译安装PHP5.3.8 with PHP-FPM
 摘自:http://doophp.sinaapp.com/archiv ... php-fpm-phpize.html
 
 
 | 
 |