2018.2.28 10周1次课

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2018.2.28 10周1次课相关的知识,希望对你有一定的参考价值。

十周第一次课(2月28日)

11.10/11.11/11.12 安装php5 11.13 安装PHP7

11.10/11.11/11.12 安装PHP5

关于PHP版本,目前大多企业都会使用5.4及更高版本,甚至越来越多的企业使用PHP7版本。7和5两个版本还是有很大差异的,据说7版本有很大的性能提升,但7版本还是太新了,很多企业的网站不一定能兼容。新事物取代旧事物是必然趋势,所以在后续的学习和工作中,建议你要与时俱进,敢于尝试。在本实验中,使用的PHP版本为5.6,PHP的官方下载地址为 : http://www.php.net/downloads.php

  • PHP官网www.php.net

  • 当前主流版本为5.6/7.1

  • cd /usr/local/src/

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

  • 解压安装包:tar -zxvf php-5.6.33.tar.gz

  • yum安装依赖的程序包

yum install –y gcc gcc-c++ libxml2-devel openssl openssl-devel bzip2 bzip2-devel libpng libpng-devel freetype freetype-devel libjpeg-turbo-devel.x86_64 epel-release libmcrypt-devel

  • 初始化:

./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache2.4/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-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

apxs为httpd的一个工具,因为有它才会自动的把PHP模块安装到httpd的modules目录下,也就是说php会以一个模块的形式和httpd结合在一起工作。

技术分享图片

  • make && make install

技术分享图片

技术分享图片

技术分享图片

  • /usr/local/apache2.4/modules/libphp5.so   //在apache2.4下的php5扩展模块,apache和php结合起来就是通过libphp5.so文件

  • 查看PHP所加载的模块:/usr/local/php/bin/php –m   //所有模块都是静态的

技术分享图片

  • 打开apaches的配置文件:vi /usr/local/apache2.4/conf/httpd.conf

技术分享图片

 

  • 拷贝配置文件:cp php.ini-production  /usr/local/php/etc/php.ini  // php.ini-production是生产环境,php.ini-development是开发环境

查看配置:/usr/local/php/bin/php -i | less  

技术分享图片

配置文件位置是空的

技术分享图片

再次查看配置:/usr/local/php/bin/php -i |less

技术分享图片

安装PHP7

  • cd /usr/local/src/

  • tar -zxvf php-7.2.2.tar.gz

  • cd php-7.2.2

  • ./configure --prefix=/usr/local/php7 --with-apxs2=/usr/local/apache2.4/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-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

在编译安装到最后出现configure: WARNING: unrecognized options: --with-mcrypt, --enable-gd-native-ttf错误的提示

表示php7.2不支持这两个选项,把上面两个编译选项删除就可以了。

在phh7.1时,官方就开始建议用openssl_*系列函数代替Mcrypt_*系列的函数。

  • make && make install

技术分享图片

 

在apache模块里有2个php的.so文件

技术分享图片

查看PHP模块:

技术分享图片

查看apache加载了哪些模块:有2个php模块

技术分享图片

技术分享图片

用哪个模块就根据自己需求去更改:vim /usr/local/apache2.4/conf/httpd.conf

技术分享图片

需要用哪个就把另一个注释掉

  • 拷贝配置文件:cp php.ini-production  /usr/local/php7/etc/php.ini


以上是关于2018.2.28 10周1次课的主要内容,如果未能解决你的问题,请参考以下文章

,2018-2-28 10周1次课 PHP5PHP7的安装

2018.1.23 7周2次课

​2017-10-16 1周1次课

2018.1.29 8周1次课

2018.3.1 10周2次课

2018.1.24 7周3次课