美文网首页
CentOS7源码安装PHP7

CentOS7源码安装PHP7

作者: 祥哥去哪里 | 来源:发表于2018-05-31 21:36 被阅读0次

    前言:

    其实对于很多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的文章,也是自己学习的一个路径.如果有不对的地方,欢迎大神指点

    谢谢

    以上

    相关文章

      网友评论

          本文标题:CentOS7源码安装PHP7

          本文链接:https://www.haomeiwen.com/subject/atecsftx.html