先到 PHP 官网下载

Discux 3.2 的官方版本不支持 php-7.0.8 的版本。到安装的时候会有函数不支持。如下图。


[root@OBird src]# wget http://cn2.php.net/distributions/php-7.0.8.tar.gz


解压

[root@OBird src]#tar zxvf php-7.0.8.tar.gz

下载的文件格式不一样,解压的方式不一样

php 版本不一样,但是安装过程是一样的。继续使用文档。


进入解压的目录:


[root@QQBird php-7.0.8]# cd php-7.0.8

./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache2/bin/apxs --with-config-file-path=/usr/local/php/etc --with-mysql=/usr/local/mysql --with-libxml-dir --with-gd --with-jpeg-dir --with-png-dir --with-freetype-dir --with-iconv-dir --with-zlib-dir --with-bz2 --with-openssl --with-mcrypt --enable-soap --enable-gd-native-ttf --enable-mbstring --enable-sockets --enable-exif --disable-ipv6


[root@OBird php-7.0.8]# ./configure \

> --prefix=/usr/local/php \

> --with-apxs2=/usr/local/apache2/bin/apxs \

> --with-config-file-path=/usr/local/php/etc \

> --with-mysql=/usr/local/mysql \

> --with-libxml-dir \

> --with-gd \

> --with-jpeg-dir \

> --with-png-dir \

> --with-freetype-dir \

> --with-iconv-dir \

> --with-zlib-dir \

> --with-bz2 \

> --with-openssl \

> --with-mcrypt \

> --enable-soap \

> --enable-gd-native-ttf \

> --enable-mbstring \

> --enable-sockets \

> --enable-exif \

> --disable-ipv6

(楼主将系统yum 源换成了 163 上的的yum 源,具体操作,问度娘)

在此过程中会出现一些错误,这是因为PHP 依赖一些包。

在这一步,楼主遇到如下错误:

configure:error:xml2-confignotfound.Pleasecheckyourlibxml2installation.

解决办法是:

yuminstall-ylibxml2-devel

还有错误:

configure:error:CannotfindOpenSSL's<evp.h>

解决办法是:

yuminstall-yopensslopenssl-devel

错误:

checkingforBZip2indefaultpath...notfoundconfigure:error:PleasereinstalltheBZip2distribution

解决办法:

yuminstall-ybzip2bzip2-devel

错误:

configure:error:png.hnotfound.

解决办法:

yuminstall-ylibpnglibpng-devel

错误:


configure:error:mcrypt.hnotfound.Pleasereinstalllibmcrypt.

解决办法:

yuminstall-ylibmcrypt-devel


出现Configure: error: freetype.h not found.的解决办法

yum install freetype-devel

[root@OBird php-7.0.8]# echo $?

0

[root@OBird php-7.0.8]# make 这个过程大约5分钟

Build complete.

Don't forget to run 'make test'. 出现这个说明这一步操作完成


[root@OBird php-7.0.8]# make install #此处有个警告,不知道什么原因?但是echo $? 显示正常


echo $? 至上安装完成。


--with-apxs2=/usr/local/apache2/bin/apxs apxs 是一个自动的帮助用户安装扩展模块的工具。


--with-mysql=/usr/local/mysql 这里可以看出Php 也是依赖 Mysql 的,所以这就是为什么要先安装Mysql ,而最后安装Php.

###########################################################################################

[root@OBird php-7.0.8]# ls /usr/local/apache2/modules/

httpd.exp libphp7.so mod_deflate.so mod_expires.so mod_rewrite.so

这个目录下多了一个 libphp7.so,而这个libphp7.so 是怎么产生过来的,就是因为apxs,apxs帮助生了这个文件。

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

Php 小技巧

[root@OBird php-7.0.8]# /usr/local/php/bin/php -m 查看 php 下面的模块

查看到的都是静态的

[root@OBird php-7.0.8]# /usr/local/php/bin/php -i 查看PHP 相关的配置