Linux编译安装PHP7.4.24及启动

  • 1. 下载安装包PHP安装包
  • 2. 配置安装包
    • 2.1 先安装前置插件,不管有没有都安装一下
    • 2.2 配置php
    • 2.3 执行配置命令可能会出现如下错误
    • 2.4 运行php的配置命令出现如下示例,即为配置成功
  • 3编译安装包
    • 3.1 执行编译命令(可能要花一点时间)
    • 3.2 在之前编译的源码包中,找到 php.ini-production,复制到/usr/local/php下,并改名为php.ini:
    • 3.2 修改配置文件
    • 3.3 新建用户组及用户
  • 4. 启动停止php-fpm
    • 4.1 启动
    • 4.2 停止php
      • 示例
  • 参考

1. 下载安装包PHP安装包

  • 点此进入官网选择对应安装包 php-7.4.24.tar.gz

  • 将安装包上传至服务器自定义目录,如/usr/local/

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

2. 配置安装包

2.1 先安装前置插件,不管有没有都安装一下

yum install gcc-c++ libxml2 libxml2-devel openssl openssl-devel bzip2 bzip2-devel libcurl libcurl-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel gmp gmp-devel libmcrypt libmcrypt-devel readline readline-devel libxslt libxslt-devel gd sqlite sqlite-devel net-snmp net-snmp-devel oniguruma oniguruma-devel

2.2 配置php

  • 进入解压后的目录
cd php-7.4.24
  • 执行php的配置命令如下:
./configure --prefix=/usr/local/php \ # php的安装路径
--with-config-file-path=/usr/local/php/etc \
--with-mysqli=mysqlnd \
--enable-pdo \
--with-pdo-mysql=mysqlnd \
--with-iconv-dir=/usr/local/ \
--enable-fpm \
--with-fpm-user=www \
--with-fpm-group=www \
--with-pcre-regex \
--with-zlib \
--with-bz2 \
--enable-calendar \
--disable-phar \
--with-curl \
--enable-dba \
--with-libxml-dir \
--enable-ftp \
--with-gd \
--with-jpeg-dir \
--with-png-dir \
--with-zlib-dir \
--with-freetype-dir \
--enable-gd-jis-conv \
--with-mhash \
--enable-mbstring \
--disable-opcache \
--enable-pcntl \
--enable-xml \
--disable-rpath \
--enable-shmop \
--enable-sockets \
--enable-zip \
--enable-bcmath \
--with-snmp \
--disable-ipv6 \
--with-gettext \
--disable-rpath \
--disable-debug \
--enable-embedded-mysqli \
--with-mysql-sock=/usr/local/mysql \
--with-apxs2=/usr/bin/apxs

2.3 执行配置命令可能会出现如下错误

  • 问题一

    解决办法:
git clone https://github.com/kkos/onigurumacd oniguruma./configure --prefix=/usr --libdir=/lib64make && make install
  • 问题二
Sorry, I cannot run apxs.  Possible reasons follow:1. Perl is not installed​2. apxs was not found. Try to pass the path using --with-apxs2=/path/to/apxs​3. Apache was not built using --enable-so (the apxs usage page is displayed)The output of /usr/local/apache/bin/apxs follows:./configure: line 6669: /usr/local/apache/b
in/apxs: No such file or directoryconfigure: error: Aborting

解决办法:

yum install -y perl* ​yum install -y httpd-devel

2.4 运行php的配置命令出现如下示例,即为配置成功

3编译安装包

3.1 执行编译命令(可能要花一点时间)

make && make install
  • 如下图即为编译成功,编译后的文件在./configure --prefix=/usr/local/php \ # php的安装路径

3.2 在之前编译的源码包中,找到 php.ini-production,复制到/usr/local/php下,并改名为php.ini:

cp php.ini-production /usr/local/php/php.ini
  • [可选项] 设置让PHP错误信息打印在页面上
display_errors = On
  • 将 php.ini 文件中的配置项 cgi.fix_pathinfo 设置为 0 。
vim /usr/local/php/php.ini
#定位到 cgi.fix_pathinfo= 并将其修改为如下所示:
cgi.fix_pathinfo=0

3.2 修改配置文件

  • 进入安装后的目录
cd /usr/local/php/etc/
#修改当前目录下的配置文件php-fpm.conf.default为 php-fpm.confcp php-fpm.conf.default php-fpm.conf
#编辑一下php-fpm.conf
vim php-fpm.confpid = run/php-fpm.pid
user = www
group = www#在进入php-fpm.d 目录下
cd php-fpm.d#修改当前目录下的配置文件 www.conf.default为  www.conf
cp www.conf.default www.conf

3.3 新建用户组及用户

groupadd wwwuseradd -g www www

4. 启动停止php-fpm

4.1 启动

/usr/local/php/sbin/php-fpm

没有任何的输出,表示成功了!!!

php-fpm占用的是9000端口,我们查看下进程:

ps -ef|grep php-fpm


查看端口:

netstat -tnl | grep 9000


说明php启动成功

4.2 停止php

我们在新安装扩展后,是需要重新php-fpm的,已使扩展生效。

最简单粗暴的重新php-fpm的方式是:

先找到php-fpm的进程号,kill 掉,再用/usr/local/php/sbin/php-fpm 这样启动。

其实还有更多温和的方法,就是使用信号。

INT, TERM 立刻终止
QUIT 平滑终止
USR1 重新打开日志文件
USR2 平滑重载所有worker进程并重新载入配置和二进制模块

示例

php-fpm 关闭:

kill -INT `cat /usr/local/php/var/run/php-fpm.pid`

php-fpm 重启:

kill -USR2 `cat /usr/local/php/var/run/php-fpm.pid`

参考

  • php-fpm讲解

  • php安装

  • Linux下编译安装PHP7.2

Linux编译安装PHP7.4.24及启动相关推荐

  1. linux php7.2编译安装,Linux下编译安装php7.2

    准备工作 所有操作需要在root用户下 安装路径: /usr/local/php 安装PHP 首先要安装如下依赖包 $ yum install -y gcc gcc-c++  make zlib zl ...

  2. 【安装PHP】如何在openSUSE42.1下编译安装PHP7

    首先推荐一篇文章PHP 7 Release Date Arrived: Will Developers Adopt PHP 7? - PHP Classes blog. 里面说到是否会去使用PHP7, ...

  3. centos php71,CentOS 71编译安装PHP7

    1 创建php用户和用户组,并在github下载php7源码 首先创建一个名为php且没有登录权限的用户和一个名为php的用户组,然后去GitHub下载php7源码包. #######新建php用户和 ...

  4. 源码编译安装php-7.4.8

    源码编译安装php-7.4.8 1.下载php7的包 2. 安装依赖包 3.解压 4.编译 5.生成配置文件 6.创建测试页面测试 一键部署脚本 (按需修改脚本内容) 官网:https://www.p ...

  5. (Openeuler-x86)编译安装php-7.4+zabbix5.0.8(Apache+php+zabbix)

    #关闭防火墙和 selinux 并重启 sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config systemctl dis ...

  6. linux rsync yum安装,Linux安装yum安装rsync 、Linux编译安装最新版rsync

    Loading... # Linux安装yum安装rsync .Linux编译安装最新版rsync ## 针对CentOS采用 yum 安装 ### 安装 ``` yum install rsync ...

  7. linux编译安装Nginx1.6.0+MySQL5.6.19+PHP5.5.14

    linux编译安装Nginx1.6.0+MySQL5.6.19+PHP5.5.14的方法对于 我这个小菜菜来讲是非常的复杂的还好有这篇文章,下面一起来看看吧. 一.使用系统镜像文件配置本地yum源 1 ...

  8. 编译 PHP7.0为什么那么慢,CentOS 7编译安装php7.0.7以及可能遇到的问题的解决方案...

    #CentOS 7编译安装php7.0.7 下载并解压php 编译安装 修改配置文件 启动服务 过程中可能遇到的问题解决 1.下载并解压php ####下载地址 http://cn2.php.net/ ...

  9. 电视盒安装php,全志a20安卓电视盒子安装可道云kodexplorer服务-编译安装php7.3+nginx...

    可道云真的很强大,安装包很小,功能却很齐全,还可以自定义轻应用 如果有手机客户端就更好了 研究了一下,可道云根目录放到外置存储设备(移动硬盘)会更合适,改路径的方法下面有提到 上传文件时一个文件会在用 ...

  10. php-7.2.13的安装,Centos7.2编译安装php-7.0.13

    Centos7.2编译安装php-7.0.13 1- 安装依赖 yum install wget autoconf libjpeg libjpeg-devel libpng libpng-devel ...

最新文章

  1. 示波器测485串口波特率的使用方法
  2. thinkPHP 空模块和空操作、前置操作和后置操作 具体介绍(十四)
  3. 成员变量和类变量的区别:
  4. java常用类需要记吗_java 常用类
  5. 少走弯路:Mac+python+opencv
  6. win 二进制门安装mysql_MySQL5.7 windows二进制安装
  7. iOS读取通讯录获取好友通讯录信息[名字(姓+名字),手机号码(多个号码)等]...
  8. C语言爬虫程序,simspider
  9. 有什么好用的画c语言流程图的软件?
  10. IEC 60335标准介绍
  11. 射极跟随器实验报告数据处理_射极跟随器实验报告 -
  12. python系列3—顺序结构和分支结构
  13. 如何改变hr标签的颜色
  14. windows 10 添加鼠标右键快捷应用
  15. 计算机故障声音,不同的电脑故障声音分别是什么意思【详解】
  16. 学习笔记之——Python中类和对象的理解
  17. 4.网络设备基础配置实验
  18. GUVC-T10GD-L185 臭氧灯监控172nm和185nm紫外线灯监测高可靠性光电二极管杀菌灯监控
  19. LVTTL转LVDS MS90C385B/G与LVDS转LVTTL MS90C386B 功能特点及应用详解
  20. 到底什么是叶脊网络?

热门文章

  1. 继承几近失传的经典吟诵-余觉中
  2. 500强企业常用的高效工作方法
  3. matlab电磁场,电磁场与波 电磁材料及MATLAB计算
  4. 一次excel表格操作
  5. python实现topsis法
  6. Phase2 Day22 JDBC
  7. Android开发中需要用到的常见APP对应包名
  8. 2021年危险化学品经营单位安全管理人员考试及危险化学品经营单位安全管理人员作业考试题库
  9. Awesome Mac :好用的Mac软件和教程
  10. 《东周列国志》第二十二回 公子友两定鲁君 齐皇子独对委蛇