分享知识 传递快乐
由于之前写过Windows整合方式,有很多相同的地方,在此就不过多重复写了,参考下面几篇文章就够用了。
Win7整合WNMP(Linux整合LNMP(Centos7.4+Nginx+PHP+MariaDB))
Nginx安装注意事项
Linux安装MariaDB(超详细的yum安装、二进制安装)
Nginx和MariaDB配置还是很顺利,但在配置PHP时出了不少幺蛾子;下面记录一下本人遇到的问题。
1、官网下载PHP二进制包
PHP 5.2.25:https://www.php.net/releases/
文件名:php-5.2.15.tar.gz
2、解压tar.gz文件到指定目录下
[root@localhost ~]# mkdir /opt/mariadb
[root@localhost ~]# tar -zxvf php-5.2.15.tar.gz -C /opt/lnmp/bin/php/5.5.12
3、配置
1)配置
[root@localhost 5.5.12]# ./configure --prefix=/opt/lnmp/bin/php/5.5.12 --with-config-file-path=/opt/lnmp/bin/php/5.5.12/etc --enable-inline-optimization --disable-debug --enable-fpm --with-fpm-user=www --with-fpm-group=www --disable-rpath --enable-soap --with-libxml-dir --with-xmlrpc --with-openssl --with-mhash --with-pcre-regex --with-zlib --enable-bcmath --with-bz2 --enable-calendar --with-curl --enable-exif --with-pcre-dir --enable-ftp --with-gd --with-openssl-dir --with-jpeg-dir --with-png-dir --with-zlib-dir --with-freetype-dir --enable-gd-jis-conv --with-gettext --with-gmp --with-mhash --enable-mbstring --with-onig --enable-shared --enable-opcache --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-readline --with-iconv --enable-pcntl --enable-shmop --enable-sysvmsg --enable-sysvsem --enable-sysvshm --enable-sockets --enable-zip --enable-wddx --with-pear
2)编译安装
[root@localhost 5.5.12]# make
[root@localhost 5.5.12]# make install
或者
[root@localhost 5.5.12]# make && make install
附:
还可以使用一条命令操作全部:配置编译安装
[root@localhost 5.5.12]# ./configure --prefix=/opt/lnmp/bin/php/5.5.12 --with-config-file-path=/opt/lnmp/bin/php/5.5.12/etc --enable-inline-optimization --disable-debug --enable-fpm --with-fpm-user=www --with-fpm-group=www --disable-rpath --enable-soap --with-libxml-dir --with-xmlrpc --with-openssl --with-mhash --with-pcre-regex --with-zlib --enable-bcmath --with-bz2 --enable-calendar --with-curl --enable-exif --with-pcre-dir --enable-ftp --with-gd --with-openssl-dir --with-jpeg-dir --with-png-dir --with-zlib-dir --with-freetype-dir --enable-gd-jis-conv --with-gettext --with-gmp --with-mhash --enable-mbstring --with-onig --enable-shared --enable-opcache --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-readline --with-iconv --enable-pcntl --enable-shmop --enable-sysvmsg --enable-sysvsem --enable-sysvshm --enable-sockets --enable-zip --enable-wddx --with-pear && make && make install
如果在编译安装时出现异常请参考命令结束的最后一行,根据反馈的信息来判断系统缺少哪些依赖文件。在文章最下面提供一些常见的PHP编译时返回error解决方法。
4、启动
编译安装成功后会在php的安装目录下生成一个sbin的文件夹,通过php-fpm来启动PHP:
[root@localhost 5.5.12]# cd sbin/
[root@localhost sbin]# ./php-fpm
[06-Jan-2020 20:57:05] ERROR: failed to open configuration file '/opt/lnmp/bin/php/5.5.12/etc/php-fpm.conf': No such file or directory (2)
[06-Jan-2020 20:57:05] ERROR: failed to load configuration file '/opt/lnmp/bin/php/5.5.12/etc/php-fpm.conf'
[06-Jan-2020 20:57:05] ERROR: FPM initialization failed
在启动出现了异常,提示找不到php-fpm.conf文件。
解决方法:
进入php的配置目录
[root@localhost etc]# cd etc/
[root@localhost etc]# cp php-fpm.conf.default php-fpm.conf
[root@localhost etc]# vim php-fpm.conf
打开 php-fpm.conf 文件中以下配置:
pid = run/php-fpm.pid
打开后,保存即可。
5、查看状态
[root@localhost 5.5.12]# ps -ef | grep php-fpm
6、停止
[root@localhost 5.5.12]# killall -9 php-fpm
PHP编译时返回error解决方法:
1)Configure: error: xml2-config not found. Please check your libxml2 installation.
[root@localhost 5.5.12]# yum install libxml2 libxml2-devel
2)Configure: error: Please reinstall the BZip2 distribution
[root@localhost 5.5.12]# yum install bzip2 bzip2-devel
3)Configure: error: Please reinstall the libcurl distribution-easy.h should be in <curl-dir>/include/curl/.
[root@localhost 5.5.12]# yum install curl curl-devel
4)Configure: error: libjpeg.(also) not found.
[root@localhost 5.5.12]# yum install libjpeg libjpeg-devel
5)Configure: error: libpng.(also) not found.
[root@localhost 5.5.12]# yum install libpng libpng-devel
6)Configure: error: mcrypt.h not found. Please reinstall libmcrypt.
[root@localhost 5.5.12]# yum install libmcrypt libmcrypt-devel
[root@localhost 5.5.12]# yum install -y epel-release
[root@localhost 5.5.12]# yum install -y libmcrypt-devel
7)Configure: error: Please reinstall libmhash – I cannot find mhash.h.
[root@localhost 5.5.12]# yum install mhash-devel
8)Configure: error: jpeglib.h not found.
[root@localhost 5.5.12]# yum -y install libjpeg-devel
9)./sbin/php-fpm: error while loading shared libraries: libjpeg.so.62: cannot open shared object file: No such file or directory
[root@contos7 shell]# yum install libjpeg*
——————————
如有不足请留言指正
相互学习,共同进步