先备份
mv /data/server/php /data/server/php.5.2
mv /etc/init.d/php-fpm /etc/init.d/php-fpm.5.2
编译源码
首先先执行./buildconf --force,为了防止出现 cp:cannot stat 'sapi/cli/php.1': No such file or directory
./buildconf --force
./configure --prefix=/data/server/php --with-config-file-path=/data/server/php/etc --with-mysql=/data/server/mysql --with-mysqli=/data/server/mysql/bin/mysql_config --with-gd --with-iconv --with-zlib --enable-xml --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --with-curlwrappers --enable-mbregex --enable-fpm --enable-mbstring --enable-ftp --enable-gd-native-ttf --with-openssl --enable-pcntl --enable-sockets --with-xmlrpc --enable-zip --enable-soap --without-pear --with-gettext --enable-session --with-mcrypt --with-curl
make
make install
如果安装出现错误
make: *** [sapi/cli/php] Error 1
解决方法:
make ZEND_EXTRA_LIBS='-liconv'
ln -s /usr/local/lib/libiconv.so.2 /usr/lib64/
配置文件
cp php.ini-production /data/server/php/etc/php.ini
rm -rf /etc/php.ini
ln -s /data/server/php/etc/php.ini /etc/php.ini
cp /data/server/php/etc/php-fpm.conf.default /data/server/php/etc/php-fpm.conf
vi /data/server/php/etc/php-fpm.conf
user = www
group = www
pid = run/php-fpm.pid
listen = /tmp/php-cgi.sock
listen.owner = www
listen.group = www
设置 php-fpm开机启动
cp sapi/fpm/init.d.php-fpm /etc/rc.d/init.d/php-fpm
chmod +x /etc/rc.d/init.d/php-fpm
chkconfig php-fpm on
vi /etc/php.ini
找到:;date.timezone =
修改为:date.timezone = PRC
#设置时区
找到:expose_php = On
修改为:expose_php = OFF
#禁止显示php版本的信息
找到:short_open_tag = Off
修改为:short_open_tag = ON
#支持php短标签
找到:disable_functions =
修改为:
disable_functions = passthru,exec,system,chroot,scandir,chgrp,chown,shell_exec,proc_open,proc_get_status,ini_alter,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,stream_socket_server,escapeshell,cmd,dll,popen,disk_free_space,checkdnsrr,checkdnsrr,getservbyname,getservbyport,disk_total_space,posix_ctermid,posix_get_last_error,posix_getcwd, posix_getegid,posix_geteuid,posix_getgid, posix_getgrgid,posix_getgrnam,posix_getgroups,posix_getlogin,posix_getpgid,posix_getpgrp,posix_getpid, posix_getppid,posix_getpwnam,posix_getpwuid, posix_getrlimit, posix_getsid,posix_getuid,posix_isatty, posix_kill,posix_mkfifo,posix_setegid,posix_seteuid,posix_setgid, posix_setpgid,posix_setsid,posix_setuid,posix_strerror,posix_times,posix_ttyname,posix_uname
配置完成后重启PHP-FPM服务即可!