php 7牛,安装PHP5、安装PHP7

PHP5安装

进到src目录下 cd /usr/local/src

下载PHP5源码包wget http://cn2.php.net/distributions/php-5.6.37.tar.gz

解压下载的文件 tar -zxvf php-5.6.37.tar.gz

进入文件目录 cd php-5.6.37

configure ./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache/bin/apxs --with-config-file-path=/usr/local/php/etc --with-mysql=/usr/local/mysql --with-pdo-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config --with-zlib-dir --with-gd --with-jpeg-dir --with-png-dir --with-freetype-dir --with-iconv-dir --with-zlib-dir --with-bz2 --with-openssl-dir=/usr/include/openssl --with-mcrypt --enable-soap --enable-gd-native-ttf --enable-mbstring --enable-sockets --enable-exif

查看报错信息

checking for xml2-config path…

configure: error: xml2-config not found. Please check your libxml2 installation.

解决办法如下,完成后再执行configure

yum install libxml2-devel -y

yum install libxml2 -y

查看报错信息

configure:error: cannot find OpenSSL's

解决如下,完成后再执行configure时将--with-openssl 改为--with-openssl-dir=/usr/include/openssl。或者不更改命令,直接执行yum install -y openssl-devel 也可以。

export PHP_OPENSSL_DIR=yes

查看报错信息

configure:error:please reinstall the BZip2 distribution

解决如下,完成后继续configure

yum install bzip2-devel -y

查看报错信息

configure:error:jpeglib.h not found

解决如下,完成后继续configure

yum install libjpeg-devel -y

查看报错信息

png.h not found

解决后继续configure

yum install libpng-devel

查看报错信息

freetype-config not found

解决后继续configure

yum install freetype-devel -y

查看报错信息

mcrypt.h not found please reinstall libmcrypt

解决后继续configure

yum install libmcrypt-devel -y

fa18815fb06735b429dafaa222100afa.png

出现这个界面就可以编译安装了

make && make install

编译安装完之后需要拷贝一个文件做配置文件 ,源文件是在/usr/local/src/php-5.6.37下 ,cp php.ini-development /usr/local/php/etc/php.ini

查看是否加载配置文件,该命令可以查看PHP信息,包括编译参数,configure路径等。

/usr/local/php/bin/php -i |less

安装PHP 7

PHP7和PHP5的安装大同小异

进入/usr/local/src目录

tar jxvf php-7.1.20.tar.bz2

cd php-7.1。20

./configure --prefix=/usr/local/php7 --with-apxs2=/usr/local/apache/bin/apxs --with-config-file-path=/usr/local/php7/etc --with-pdo-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config --with-libxml-dir --with-gd --with-jpeg-dir --with-png-dir --with-freetype --with-iconv-dir --with-zlib-dir --with-bz2 --with-openssl --with-mcrypt --enable-soap --enable-gd-native-ttf --enable-mbstring --enable-sockets --enable-exif

因为之前装过PHP5,很多包已经安装了,所以这一步一般不会报错。

checking whether to build shared libraries... yes

checking whether to build static libraries... no

creating libtool

appending configuration tag "CXX" to libtool

Generating files

configure: creating ./config.status

creating main/internal_functions.c

creating main/internal_functions_cli.c

+--------------------------------------------------------------------+

| License: |

| This software is subject to the PHP License, available in this |

| distribution in the file LICENSE. By continuing this installation |

| process, you are bound by the terms of this license agreement. |

| If you do not agree with the terms of this license, you must abort |

| the installation process at this point. |

+--------------------------------------------------------------------+

Thank you for using PHP.

config.status: creating php7.spec

config.status: creating main/build-defs.h

config.status: creating scripts/phpize

config.status: creating scripts/man1/phpize.1

config.status: creating scripts/php-config

config.status: creating scripts/man1/php-config.1

config.status: creating sapi/cli/php.1

config.status: creating sapi/cgi/php-cgi.1

config.status: creating ext/phar/phar.1

config.status: creating ext/phar/phar.phar.1

config.status: creating main/php_config.h

config.status: executing default commands

configure: WARNING: unrecognized options: --with-freetype

[root@localhost php-7.1.20]# echo $?

0

make&&make install 编译安装

ls /usr/local/apache2.4/modules/libphp7.so

[root@localhost php-7.1.20]# cd /usr/local/apache/modules/

[root@localhost modules]# ls

httpd.exp mod_authn_dbm.so mod_cache.so mod_headers.so mod_proxy_ajp.so mod_ratelimit.so mod_socache_shmcb.so

libphp5.so

cp php.ini-production /usr/local/php7/etc/php.ini

安装完成后,可以使用/usr/local/apache2.4/bin/apachectl -M查看加载的模块,可以看到7和5都被加载了。-

[root@localhost php-7.1.20]# /usr/local/apache/bin/apachectl -M |grep php

AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using localhost.localdomain. Set the 'ServerName' directive globally to suppress this message

php5_module (shared)

php7_module (shared)

当一台机器上面装的既有5又有7的时候,如果想让Apache启动时加载7,就在配置文件中将5那一行注释掉 vi /usr/local/apache/conf/httpd.conf

#LoadModule php5_module modules/libphp5.so

LoadModule php7_module modules/libphp7.so

注释掉5后发现不再加载PHP5了。

[root@localhost php-7.1.20]# /usr/local/apache/bin/apachectl -M |grep php

AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using localhost.localdomain. Set the 'ServerName' directive globally to suppress this message

php7_module (shared)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值