lnmp搭建之php5.5.34的安装
解压
2.创建php-fpm用户
useradd -s /sbin/nologin php-fpm
3. cd php5.5.34
执行:
4.编译:【借鉴阿明linux的配置选项】
./configure \--prefix=/usr/local/php \--with-config-file-path=/usr/local/php/etc \--enable-fpm \--with-fpm-user=php-fpm \--with-fpm-group=php-fpm \--with-mysql=/usr/local/mysql \--with-mysql-sock=/tmp/mysql.sock \--with-libxml-dir \--with-gd \--with-jpeg-dir \--with-png-dir \--with-freetype-dir \--with-iconv-dir \--with-zlib-dir \--with-mcrypt \--enable-soap \--enable-gd-native-ttf \--enable-ftp \--enable-mbstring \--enable-exif \--enable-zend-multibyte \--disable-ipv6 \--with-pear \--with-curl \--with-openssl
2.编译/安装后
1)拷贝配置文件
cp php.ini-production /usr/local/php/etc/php.ini
2)拷贝脚本:
cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm 可以去编辑的只是一个启动的shell脚本
3)修改权限php-fpm
授予其执行的权限:
chmod 755 /etc/init.d/php-fpm
chkconfig --add php-fpm
chkconfig php-fpm on
4) 启动, service php-fpm start
注意配置文件: php-fpm.conf
5)启动之前你也可以检查一下配置文件的正确性:
/usr/local/php/sbin/php-fpm -t
6)启动
流程下来,觉得mysql的安装有点类似。
错误以及解决方案:
1.configure: error: no acceptable C compiler found in $PATH
See `config.log' for more details
yum install -y gcc
2.
configure: error: xml2-config not found. Please check your libxml2 installation.
yum install -y libxml2.x86_64 libxml2-devel.x86_64
3.configure: error: Cannot find OpenSSL's
yum install -y openssl.x86_64 openssl-devel.x86_64
4.
error: Please reinstall the libcurl distribution -
easy.h should be in
/include/curl/ yum install -y curl.x86_64 libcurl-devel.x86_64
5.checking whether to enable JIS-mapped Japanese font support in GD... no
If configure fails try --with-vpx-dir=
yum install libjpeg.x86_64 libpng.x86_64 freetype.x86_64 libjpeg-devel.x86_64 libpng-devel.x86_64 freetype-devel.x86_64 -y
测试结果:
6.
configure: error: jpeglib.h not found.
这个搓错误,不是安装libjpeg 和libjpeg-devel
应该是:
yum install -y libjpeg-turbo.x86_64 libjpeg-turbo-devel.x86_64
7.
mcrypt.h not found. Please reinstall libmcrypt.
发现yum源没有这个安装包,就要扩展yum源了:
yum install -y epel-release.noarch
然后查找文件
yum install -y libmcrypt.x86_64 libmcrypt-devel.x86_64
8.
error: Cannot find MySQL header files under /usr/local/mysql.
Note that the MySQL client library is not bundled anymore!
9.启动的时候的错误:
[root@ip5 php-5.5.34]# service php-fpm start
Starting php-fpm [27-Apr-2016 17:24:21] ERROR: failed to open configuration file '/usr/local/php/etc/php-fpm.conf': No such file or directory (2)
[27-Apr-2016 17:24:21] ERROR: failed to load configuration file '/usr/local/php/etc/php-fpm.conf'
[27-Apr-2016 17:24:21] ERROR: FPM initialization failed
failed
说明是没有启动php-fpm 的配置文件,那么,我们只需要去其安装路径中重命名:php-fpm.conf.defult 重名为:php-fpm.conf
10.启动php的-fpm的时候,出现:
启动php-fpm的时候,这个提示不知道为啥?
[root@daiqing php-5.5.31]# service php-fpm start
Starting php-fpm [14-Jan-2016 06:16:59] ERROR: [pool www] cannot get uid for user 'php-fpm'
[14-Jan-2016 06:16:59] ERROR: FPM initialization failed
failed原因分析i:
创建用户没有成功,useradd -s /sbin/nologin php-fpm
11.编译的时候i,出现参数:
--enable-zend-multibyte :
该编译参数已经不存在了。
12. 查看php的编译参数:
/usr/local/php/bin/php -i |head