安装 PHP7.3.10及其依赖源码包 | 学习笔记

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
全局流量管理 GTM,标准版 1个月
简介: 快速学习安装 PHP7.3.10及其依赖源码包

开发者学堂课程【阿里云上搭建 LAMP 环境实战:安装 PHP7.3.10及其依赖源码包】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/663/detail/11090


安装 PHP7.3.10及其依赖源码包

 

内容介绍

一. 安装 libxml2

二. 安装 libmcrypt

三. 安装 mhash

四. 安装 mcrypt

五. 安装 libpng

六. 安装 jpeg9

七. 安装 freetype

八. 安装 PHP

 

一. 安装 libxml2

php 的安装也比较复杂,他不是容易出错,虽然下载的是最新的版本,但是因为装 php 的时候,还要装很多 php 的扩展,因为有了这一扩展,  php 的功能才很强大,所以是比较麻烦的。

扩展有什么作用,回到下载软件的目录,看一下,还有很多的软件包没有解开,这些剩下的其实都和 php 相关的,第一个安装的就是 libxml2 ,在前面试验的时候已经安装过了,已经有了,就不用再去安装了。

那 the lib 用到的前面也已经装过了,也不用安装了。

#tar-xflibxml2-2.9.9.targg

#cd/root/lamp/libxml2-2.9.9

#./configure--prefix=/usr/local/libxml2/

# make

# make install

二.安装 libmcrypt

我们按照这个步骤继续,先从这个加密软件来安装,首先同样的步骤先解包。

这些软件的安装都相对比较容易,直接配置就行了,粘贴都装在固定指定它的安装目录。

比较简单,等待一下,然后直接输入 make and make install 直接编译安装一起完成,完成后没有问题可以看一下他的加目录,  usr 下边, local 下边有没有数据,有数据没问题回来,继续安装下一个软件。

#tar-xflibmcrypt-2.5.8.tar.gz

#cd/root/lamp/libmcrypt-2.5.8

#./configure--prefix=/usr/local/libmcrypt/

# make

# make install

安装libltd,也在libmcrypt源码目录中,非新软件#cd/root/lamp/libmcrypt-2.5.8/libitd

#./configure--enable-Itdl-install

# make

# make install

 

三.安装 mhash

xf mhash 解压进入到 mhash 这个目录下,然后直接不用指定目录输入 make and make install  一起安装

# tar -xfmhash-0.9.9.9.tar.gz

#cd/root/lamp/mhash-0.9.9.9

# ./configure

# make

# make install

 

四.安装 mcrypt

解压进入软件目录,需要配置一下环境变量,然后需要指定它的依赖。粘过来,前面已经安装完成,输入 make and make install 安装,安装完成没有出错误

# tar-xf mcrypt-2.6.8.tar.gz

#cd /lamp/mcrypt-2.6.8

#exportLD_LIBRARY_PATH=/usr/lccal/libmcrypt/ib:/usr/local/lib

变量: LDLIBRARYPATH 用于指定 libmcrypt 和 mhash的库的

位置  

#./configure--with-libmcrvpt-prefix=/usr/local/libmcrypt

# make

# make install

 

五. 安装 libpng

同样回到目录下解包,xf libpng 解压进入到 libpng 一定要进入到他的目录下边,然后指定他的安装位置,这些软件都不太容易出错,所以我们只要文件,名称,目录别打错就可以。输入 make and make install 安装

#tar-xf libpng-1.6.7.tar.gz

#cd/root/lamp/libpng-1.6.7

#./configure-prefix=/usr/local/libpng

# make

# make install

 

六. 安装 jpeg9

如果装 jpeg6 他的默认加目录需要一个一个指定,比较麻烦。

直接解压安装,进入目录后配置指定他的加目录,不用手动创建了,加上共享模块和静态模块这两个选项,输入 make and make install 安装,所以有一些新版本的软件还是比较容易安装的,比原来省事多了。

#tar-xfipegsrc.v9c.tar.gz

#cd/root/lamp/jpeg-9c/

#./configure--prefix=/usr/local/jpeg9/--enable-shared--enable-static

# make

# make install

-enableshared 与-enablestatic 参数分别为建立共享库和静态库使用的 libtool

 

七. 安装 freetype

同样解包,进入到目录下边,然后我们直接执行指定加目录,粘贴 ./configure--prefix=/usr/local/freetype/  这样用 PHP 处理图像就可以使用图像上面输出一些字体,输入 make and make install 安装,用 PHP 时可能会出现 PHP  freetype . H 这个头文件没有发现,解决方法是补充一个依赖包即可

#tar-xffreetype-2.10.0.targz

#cd/root/lamp/freetype-2.10.0

#./configure--prefix=/usr/local/freetype

# make

# make install

#yum install freetype-devel

PHP 会出现 Configureerror:freetypeh not found错误解决方法如下:

使用:yum installfreetype-devel 补充依赖包即可

 

八. 安装 PHP

同样的方法先解压,装的是最新版本7.3.10,进入 PHP 7.3.10目录下,这是 PHP 的源文件,要记住,后期会有一些拓展文化在源文件里直接可以去找到。同样,他的配置选项需要很多,把他粘贴过来

,/configure

-prefix=/usr/local/php/\\                  指定配策文件目录

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

-with-apxs2=/usr/local/apache2/bin/apxs\   指定apache动态横块位置

-with-libxml-dir=/usr/local/libxml2/\        指定licxml位置

with-jpeg-dir=/usr/local/jpeg9/\            指定1088位置

with-png-dir=/usr/local/libpng//           指定 libong 位置

with-freetype-dir=/usr/local/freetype/\   指定 freetype.位置

with-mcrypt=/usr/local/libmcrypt/\       指定libmcrypt位置

with-gd\                                 启用gd 库

--enable-soap\                          支持soap服务(api)

enable-mbstring=all \                    支持多字节,字符串

enable-sockets                           支持套接字

-with-pdo-mysql=/usr/local/mysql\      启用 mvsol的 pdo 模块支持

with-pdo-mysgl=mysqlnd \             Mysql Native Driver 简称:mysglnd

--with-gd--without-pear         不安装 pear(Composer代替)

输入 make test 执行,一共需要测试 PHP 的13376个函数可用。再输入 make and make install 安装,出现的警告可以忽略,只要不是致命错误就行,没有提示错误,PHP 安装完成。

1.生成 PHP 配置文件

软件已经有了,那我们怎么配合使用呢?还需要配置文件,把配置文件安装时指定配置文件在 PHP 加目录下,etc 下面,到 usr , local 下面,创建一个 etc 的目录,mkdir 创建一个 etc

#mkdir/usr/local/php/etc

#cp/root/lamp/php-73.10/phpini-production/usr/local/php/etc/php.ini

在这个目录下,只要把源码包里面已经自带的一个文件拷贝过来,变成 php.ini ,就是 php 的配置文件。拷贝在 root,lamp 下边。暂时先不用修改,那 php 也不需要启动。

可以用了,在 php 的加目录下,也就是 bin 目录下,里面有这么多 PHP 可用的命令。 php ,还有 phpize ,这是后面扩展用的,这里用 php 定义就行了。

如果想要其他目录下也用这个文件,那就直接使用这个文件,把这个做到环境变量里就可以了。回到我的 root 目录下,新建一个 vi.test.php 文件,随便写一些 php 代码。比如 ls 这是一个 test 测试,回车,保存。

执行 share 脚本, share A. share. 那 php 脚本呢?

usr,local 下面的 php 加目录下有个 php 命令用它执行。输入 test.php 就执行了。

那同样,想看一下 php 默认安装了哪些模块,—m 这就是 php 现在已经安装的模块,好多模块现在都没有,那想装这些扩展模块,后期用 ppize 安装就行了,在 apache 目录下的 htducs 目录下有一个 test.php ,现在 apache 就能执行它吗?

我们在安装 php 时,已经将这个 php 的模块作为一个 apache 的模块装到了 apache 目录下 apxs 目录下,到这个目录下看看有没有这个扩展,usr 下边, local 下边, apache 下边,发现这个目录现在不存在,后期扩展再生成这个目录,现在只是指定 bin 下面的这个文件,这个文件指定他下面的这个位置。

回到 htdocs 目录下,看一下 test 文件能不能执行,usr 下边,local 下边,bin 下边的 php 执行一下 test.php ,还记得这里面的内容,查看一下。

我们写的是一个循环,输出时还有语句,那这个文件,我们现在在浏览器能不能执行,如果能,证明 php 已经挂在 apache 上了,apache 可以去解析了,刷新一下原来的 test 文件,还是没有执行,没有挂成功。那就还需要一步设置。

2. 修改 Apache 配置文件,使其识别 php 文件。并能通过 php 模块使用,php 进行页面解析

#vim/usr/local/apache2/etc/httpd.conf AddTypeapplication/x-httpd-php.php

打开 apache 配置文件,告诉 apache,.php 的用 php 去执行就可以了,搜索添加类型 addtyp, 打开 apache 配置文件,找对位置添加一条就可以了,

AddType application/x-httpd-php.php  把它粘贴过来,随便找个位置,最好和那几个放在一起,后缀凝视.php 的应用的文件 x-httpd.php 这个类型用 php 用php 解析,也可以用多个,后面是 .phtml 的,也用php 模块解析,现在我们都用统一的 .php 文件,后面文件加不加没有必要。

保存一下,apache 配置文件修改完之后必须重启 apache ,然后回到浏览器再刷新一下,页面就把 php 代码解析了,把结果返回来了,这样 apache 就挂摆成功了,通常装 php 一定要做这样一个测试,编写一个 phpinfo ,但文件名叫什么无所谓,用一下这样的函数,就不用命令行执行了,因为数字都在 tml,直接用 php ,现在执行 phpinfo ,都是页面的,格式看着也不舒服,所以还是用浏览器去解析,打开浏览器执行 phpinfo ,这个文件执行后尽量把他删掉,不然其他人也能访问这个文件,知道服务器所有的配置情况了。

能看到 php 的版本,使用的系统,构建的时间,配置的命令,配置文件的目录,使用的php 配置文件,特别是下边能看见所有配置的模块,还有所有的驱动,这个是我们检查 php 环境的最主要的文件,只是一个小函数而已。

相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
17天前
|
NoSQL MongoDB PHP
PHP7 MongDB 安装与使用
10月更文挑战第19天
26 1
PHP7 MongDB 安装与使用
|
1天前
|
Java 程序员 PHP
01 入门PHP就来我这-安装phpstudy
路老师的PHP入门教程,带你从零开始学习PHP。首先下载并安装phpStudy,接着配置域名和端口,最后创建并运行第一个PHP文件。内容详实,适合初学者。
14 3
01 入门PHP就来我这-安装phpstudy
|
8天前
|
JavaScript PHP 数据安全/隐私保护
乞丐在线要饭系统PHP网站源码
在这个物欲横流、竞争激烈的时代,有时候我们真心觉得钱来得太不容易,甚至连最基本的生存都成了负担。于是,我们想出了一个特别“独特”的点子:用利息砸我,给我点施舍!
33 1
|
17天前
|
前端开发 PHP 数据库
原生PHP网站源码
原生PHP网站通常指的是使用纯PHP代码编写的网站,没有使用框架或者类库来简化开发流程。
25 1
|
1月前
|
tengine 应用服务中间件 Linux
Tengine、Nginx安装PHP命令教程
要在阿里云Linux上安装PHP,请先更新YUM源并启用PHP 8.0仓库,然后安装PHP及相关扩展。通过`php -v`命令验证安装成功后,需修改Nginx配置文件以支持PHP,并重启服务。最后,创建`phpinfo.php`文件测试安装是否成功。对于CentOS系统,还需安装EPEL源和Remi仓库,其余步骤类似。完成上述操作后,可通过浏览器访问`http://IP地址/phpinfo.php`测试安装结果。
|
23天前
|
测试技术 PHP 开发工具
php性能监测模块XHProf安装与测试
【10月更文挑战第13天】php性能监测模块XHProf安装与测试
27 0
|
2月前
|
PHP Windows
thinkPhP6.0安装教程图解--PHP框架安装
本文是一篇关于ThinkPHP 6.0安装教程的图解,包括环境检查、安装Composer、修改Composer镜像地址、安装ThinkPHP框架以及启动运行ThinkPHP的步骤。文章详细描述了每个步骤的操作方法,并提供了相应的命令和截图,帮助用户理解并顺利完成ThinkPHP 6.0的安装和运行。
thinkPhP6.0安装教程图解--PHP框架安装
|
29天前
|
前端开发 JavaScript 小程序
前端uni开发后端用PHP的圈子系统该 如何做源码?
圈子系统系统基于TP6+Uni-app框架开发;客户移动端采用uni-app开发,管理后台TH6开发。系统支持微信公众号端、微信小程序端、H5端、PC端多端账号同步,可快速打包生成APP
|
1月前
|
缓存 PHP C语言
宝塔PHP8.1安装fileinfo拓展失败解决办法
在宝塔面板安装PHP8.1后,fileinfo扩展安装失败,手动尝试也报错。通过分析错误信息,在Makefile中修改CFLAGS添加`-std=c99`,并执行`make clean`清除缓存后,重新编译安装成功。最后在php.ini中启用fileinfo扩展并重启PHP服务。注意需调整CFLAGS为`-std=c99 -g`,去掉`-O2`。
84 0
|
1月前
|
前端开发 JavaScript PHP
Thinkphp在线客服系统源码多语言外贸版_PHP客服系统源码Uniapp开发搭建+论文设计
Thinkphp在线客服系统源码多语言外贸版_PHP客服系统源码Uniapp开发搭建+论文设计
下一篇
无影云桌面