米狗

  • kubernets
  • docker
  • AWS
  • linux
  • nginx
Kratos
  1. 首页
  2. 中间件
  3. php
  4. 正文

php 7.4.20编译安装

2021年6月8日 846点热度 0人点赞 0条评论

php 7.4.20编译安装

php是世界上最好的语言,近来抽出了点时间弄下博客,研究了下php的安装,中间还是不少的坑,也参考了下网上其他同仁的安装资料,最终整理出一下安装步骤,希望可以帮助大家吧。

1、安装php依赖包,大部分通过yum即可完成安装,其中一个包需要手动编译安装;

yum install libxml2 libxml2-devel openssl openssl-devel curl-devel libjpeg-devel libpng-devel freetype-devel libmcrypt-devel mcrypt sqlite-devel bzip2-devel.x86_64 libicu-devel glibc-headers gcc-c++ oniguruma-devel libxslt-devel

 

其中mcrypt包需要以下yum源才可以进行安装,默认阿里云yum源无此包。

yum源信息,在/etc/yum.repos.d目录下新建epel.repo文件,将以下文件贴进去即可。

[epel]
name=Extra Packages for Enterprise Linux 7 - $basearch
#baseurl=http://download.fedoraproject.org/pub/epel/7/$basearch
metalink=https://mirrors.fedoraproject.org/metalink?repo=epel-7&arch=$basearch
failovermethod=priority
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7

[epel-debuginfo]
name=Extra Packages for Enterprise Linux 7 - $basearch - Debug
#baseurl=http://download.fedoraproject.org/pub/epel/7/$basearch/debug
metalink=https://mirrors.fedoraproject.org/metalink?repo=epel-debug-7&arch=$basearch
failovermethod=priority
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7
gpgcheck=1

[epel-source]
name=Extra Packages for Enterprise Linux 7 - $basearch - Source
#baseurl=http://download.fedoraproject.org/pub/epel/7/SRPMS
metalink=https://mirrors.fedoraproject.org/metalink?repo=epel-source-7&arch=$basearch
failovermethod=priority
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7
gpgcheck=1

 

libzip包需要手动编译安装,自带的包版本太低。

wget https://hqidi.com/big/libzip-1.2.0.tar.gz
tar -zxvf libzip-1.2.0.tar.gz
cd libzip-1.2.0
./configure
make && make install

 

2、安装完成后进行php的编译安装,php编译过程中内存不得低于2G,否则编译报错。

本次安装路径在/app/php-7.4.20目录下,用户和组均为app,提前建立好即可。

wget https://www.php.net/distributions/php-7.4.2.tar.gz
tar xf php-7.4.2.tar.gz
cd php-7.4.2

编译前需要指定pkgconfig路径,通过find命令找到pkgconfig的路径,找到如下路径,我们指定/usr/local/lib/pkgconfig这个即可。

[root@iZj6c50uqocpfbk7hykfqaZ ~]# find / -name "pkgconfig"
/app/mysql8.0.13/lib/pkgconfig
/usr/share/pkgconfig
/usr/local/lib/pkgconfig
/usr/local/ImageMagick/lib/pkgconfig
/usr/local/aegis/PythonLoader/lib/pkgconfig
/usr/lib64/pkgconfig
/var/systemd/versions/239-40.6.al8/usr/share/pkgconfig

export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig
./configure --prefix=/app/php-7.4.20 --with-config-file-path=/app/php-7.4.20/etc --with-curl --with-freetype --enable-gd --with-jpeg --with-gettext --with-kerberos --with-libdir=lib64 --with-libxml --with-mysqli --with-openssl --with-pdo-mysql --with-pdo-sqlite --with-pear --enable-sockets --with-mhash --with-ldap-sasl --with-xsl --with-zlib --with-zip -with-bz2 --with-iconv --enable-fpm --enable-pdo --enable-bcmath --enable-mbregex --enable-mbstring --enable-opcache --enable-pcntl --enable-shmop --enable-soap --enable-sockets --enable-sysvsem --enable-xml --enable-sysvsem --enable-cli --enable-opcache --enable-intl --enable-calendar --enable-static --enable-mysqlnd --enable-fileinfo --enable-exif --with-fpm-user=app --with-fpm-group=app

 

经过漫长的编译,程序会正常编译好,编译好之后程序需要做初始化配置,包括配置文件及注册服务等;

3、配置文件及注册服务准备

将安装包php-7.4.20/sapi/fpm下面的php-fpm.service拷贝到/lib/systemd/system目录下,执行systemctl daemon-reload重新加载服务。

将安装包php-7.4.20/php.ini-production拷贝到php-7.4.20/etc/php.ini

进入安装完成后的程序目录/app/php-7.4.20/etc目录下,将php-fpm.conf.default复制为php-fpm.conf,php-fpm.d目录下

www.conf.default复制为www.conf,将php-fpm.conf中的pid = run/php-fpm.pid注释去掉。

4、设置PHP自动启动

systemctl enable php-fpm
systemctl start php-fpm

 

至此php完成安装;

 

 

 

标签: 暂无
最后更新:2024年4月12日

duhongjun

这个人很懒,什么都没留下

点赞

文章评论

您需要 登录 之后才可以评论

归档

  • 2024 年 10 月
  • 2024 年 4 月
  • 2024 年 3 月
  • 2024 年 2 月
  • 2024 年 1 月
  • 2023 年 11 月
  • 2023 年 4 月
  • 2023 年 2 月
  • 2023 年 1 月
  • 2022 年 11 月
  • 2022 年 10 月
  • 2022 年 9 月
  • 2022 年 8 月
  • 2021 年 12 月
  • 2021 年 11 月
  • 2021 年 8 月
  • 2021 年 7 月
  • 2021 年 6 月
  • 2021 年 2 月
  • 2020 年 1 月
  • 2019 年 12 月
  • 2019 年 11 月
  • 2019 年 10 月
  • 2019 年 9 月
  • 2019 年 8 月

分类目录

  • AWS
  • docker
  • elasticsearch
  • Jenkins
  • kubernets
  • linux
  • mysql
  • nginx
  • Oracle
  • php
  • redis
  • zabbix
  • 个人
  • 中间件
  • 公有云
  • 大数据
  • 安全工具
  • 微软
  • 操作系统
  • 数据库
  • 未分类
  • 监控
  • 科技
  • 网络技术
  • 资讯
  • 阿里云

COPYRIGHT © 2024 米狗. ALL RIGHTS RESERVED.

Theme Kratos Made By Seaton Jiang

沪ICP备2021019346号-1