CentOS7源码安装PHP7

简介: 前言:其实对于很多php程序员来说,Linux可能还是属于一个略懂的状态.比如搭建环境大家更加乐意去使用继承开发环境.对于源码编译安装比较陌生.当然我也不例外.

前言:

其实对于很多php程序员来说,Linux可能还是属于一个略懂的状态.比如搭建环境大家更加乐意去使用继承开发环境.对于源码编译安装比较陌生.当然我也不例外.不过我认为一个程序员无论你常用的开发语言是什么.linux都是一个绕不开的东西.所以今天就学习下如何使用源码编译安装PHP7

1.前提

首先我使用的是CentOS7的操作系统,也是一个比较主流的系统.其他发行版本甚至mac 应该方法都是大同小异
当我们安装php之前我们需要到官网去下载一个源码包


官网
  1. 点击左上角的Downloads
  2. 选择php版本(我这里选择的最新版本)
  3. 选择一个下载源,右键复制链接(我的服务器在美国,我就选了美国 大家可以自行决定)


    下载源

下面就进入到服务器环节了

首先要下载一个包,我比较常用的命令是wget,如果你没有安装wget的话

yum install wget
  • cd到你要下载的目录,使用wget命令下载
#把刚刚复制的链接粘贴到命令后面
wget http://cn2.php.net/get/php-7.2.6.tar.bz2/from/this/mirror
  • 下载完成后就有这个文件拉


    下载完成
  • 解压mirror 文件
tar -xf mirror
  • 解压出来就如上图会有一个php文件夹,这就是我们的php安装包了
  • 随后我们cd进入这个包里面.使用它里面的编译工具 configura

这个configure实际上是一个shell脚本,用来编辑我们安装包的,编译可以选择很多的配置,比如安装某些扩展,排除某些扩展,设定路径等等

#可以使用help来查看可以有那些配置
./configure --help

开始安装

  1. 安装依赖
    首先我发现php需要必须要有两个依赖,第一是gcc(很多服务器镜像有)
    第二个是libxml2
    那么的安装方式非常简单
#gcc
yum install gcc
#libxml2
yum install libxml2-devel
  1. 编译php
    还是我们之前讲的使用./configrue来编译,不过我们可以做一些配置.(当然不配置也可以)
#--prefix=/后面更你想要安装的地方,也就是window安装软件时询问你的安装目录
./configure --prefix=/service/php

如果你的服务器跟我一样是个垃圾,内存超级小 那么我推荐你在后面加上 --disable-fileinfo

./configure --prefix=/service/php/ --disable-fileinfo

然后就是等待(直到出现 Thank you for using PHP)


编译成功

那么我们编译完成之后呢,就是安装啦,安装分为两部

#第一步
make
#第二部
make install

也可以合二为一, make&&make install

又是个漫长的等待(谁叫我服务器烂呢)

验证安装

如果安装没有报错,那么应该是ok了 我们去验证一下

首先cd到你刚刚设置的目录下面去
我的是在/service/php


php目录

bin目录里就是一个可执行文件的目录,我们进入

cd bin

我们要验证php是否安装成功,我们就直接创建一个php文件,看看是否可以执行就好了

#创建一个php文件
vim index.php

进入后写上一点代码,并保存

<?php
echo 'hello world';

然后我们使用php去执行index.php 文件

成功执行

如上图我们看到的确输出了hello world 由此可以证明我们的安装php是 成功的!


6月3日更新
接着之前的写.我发现虽然我安装php7成功,并且可以使用php去执行php代码了.可是还有很多没有完善的地方

配置环境变量

也许是自己之前一直使用继承环境的原因,环境变量一直都是配好了的,非常方便.我就忘了还有这个事了

由于linux的强大,配置环境变量又分为临时设置,给某个用户设置,和全局设置.为了方便,我就直接全局设置了

#只需要配置这个文件便可以全局生效
vim /etc/profile

进入文件之后,在文末加上

#$PATH后面是你自己的php文件所在的路径
PATH=$PATH:/service/php/bin
export PATH

然后保存退出,再执行一个命令就ok了

source /etc/profile

下面我们测试一下

php -i
php信息

如果是打印出了很多的php信息的话就代表配置成功!

配置php.ini

之前没有注意到的部分还有,我们的php安装目录里面没有php.ini文件.我查阅了些资料.php.ini是在我们下载的安装包里面,需要我们把它copy到自己的安装目录里
我们先去找找看


php安装包里的内容

我们就先挑选开发版本的ini文件

在copy ini文件之前,这里还有一个细节,我们php在编译的时候我们并没有去配置它的ini文件的目录位置.那么就是一个默认的位置.那么这个默认的php.ini的位置在哪里呢?

这个可以使用刚刚使用过的命令 php -i 里面查看到,我们使用管道将我我们需要的信息过滤出来


image.png

好了我们现在知道了配置的php.ini目录的位置了.我们就把文件移动过去吧

cp php.ini-development /service/php/lib/php.ini

这样就可以通过php.ini文件来配置我们的php了

注意目录一定要和php -i 里面查出的位置保持一致哦,不然修改ini文件是不会生效的

好了今天就写到这里了.之后我会多写一些关于linux的文章,也是自己学习的一个路径.如果有不对的地方,欢迎大神指点

谢谢

以上

相关文章
|
6月前
|
监控 PHP Apache
centos7.源码安装zabbix4.4
centos7.源码安装zabbix4.4
|
10天前
|
Linux Apache
CentOS 7 源码安装LAMP环境源 和apache监听别的端口
CentOS 7 源码安装LAMP环境源 和apache监听别的端口
12 0
|
4月前
|
关系型数据库 MySQL Linux
Centos安装MySQL数据库(注意:源码安装)
Centos安装MySQL数据库(注意:源码安装)
133 0
|
4月前
|
应用服务中间件 Linux PHP
百度搜索:蓝易云【在centos中配置nginx+php的环境教程。】
请注意,上述步骤是基本的配置指南,实际操作中可能会有特定的需求和配置。建议参考Nginx和PHP官方文档或其他详细教程以获得更全面和准确的信息。
45 0
|
4月前
|
小程序 JavaScript Shell
centos编译安装PHP(2)
Php编译安装成功之后,是没有php.ini文件的,需要我们从源码包中复制过去。
45 1
|
4月前
|
前端开发 JavaScript Shell
centos编译安装PHP(1)
当然,我是直接在服务器上下载的: bash 复制代码
72 1
|
7月前
|
Kubernetes NoSQL Java
CentOS7上源码安装Redis6
CentOS7上源码安装Redis6
200 0
|
7月前
|
监控 Linux PHP
Linux(CentOS7上演示)上使用LNMP搭建一个PHP的运行环境,并搭建一个开源的个人博客网站I(下)
Linux(CentOS7上演示)上使用LNMP搭建一个PHP的运行环境,并搭建一个开源的个人博客网站I(下)
53 0
|
7月前
|
关系型数据库 MySQL Linux
Linux(CentOS7上演示)上使用LNMP搭建一个PHP的运行环境,并搭建一个开源的个人博客网站I(上)
Linux(CentOS7上演示)上使用LNMP搭建一个PHP的运行环境,并搭建一个开源的个人博客网站I(上)
111 0
|
Unix Linux 应用服务中间件
PHP:CentOS Linux环境下源码编译安装PHP8.0
PHP:CentOS Linux环境下源码编译安装PHP8.0
573 0