一、下载php7.3的源码

https://www.php.net/downloads.php

下载php-7.3.4.tar.gz

二、安装gcc,gcc-c++,kernel-devel

yum -y install gcc gcc-c++ kernel-devel

三、安装php需要的依赖库

yum -y install wget pcre pcre-devel openssl openssl-devel libicu-devel autoconf libjpeg libjpeg-devel

libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel

glib2 glib2-devel ncurses ncurses-devel curl curl-devel krb5-devel libidn libidn-devel openldap

openldap-devel nss_ldap jemalloc-devel cmake boost-devel bison automake libevent libevent-devel

gd gd-devel libtool* libmcrypt libmcrypt-devel mcrypt mhash libxslt libxslt-devel readline

readline-devel gmp gmp-devel libcurl libcurl-devel openjpeg-devel

四、创建用户和组,并解压

groupadd www

useradd -g www www

tar xf php-7.3.4.tar.gz

cd php-7.3.4

五、进行编译安装

php的路径 --prefix 和配置文件 --with-config-file-path 路径大家可以自行设置

./configure --prefix=/data/nmp/php

--with-config-file-path=/data/nmp/php/etc

--with-fpm-user=www

--with-fpm-group=www

--with-mysqli=mysqlnd

--with-pdo-mysql=mysqlnd

--with-iconv-dir

--with-freetype-dir

--with-jpeg-dir

--with-png-dir

--with-zlib

--with-libxml-dir

--with-ldap=shared

--with-gdbm

--with-pear

--with-gettext

--with-curl

--with-xmlrpc

--with-openssl

--with-mhash

--with-gd

--enable-fpm

--enable-mysqlnd

--enable-mysqlnd-compression-support

--enable-xml

--enable-rpath

--enable-bcmath

--enable-shmop

--enable-sysvsem

--enable-inline-optimization

--enable-mbregex

--enable-mbstring

--enable-intl

--enable-ftp

--enable-gd-jis-conv

--enable-pcntl

--enable-sockets

--enable-zip

--enable-soap

--enable-fileinfo

--enable-opcache

--enable-maintainer-zts

编译安装

make -j 4 && make install

上面的步骤有可能出现的问题:

1、configure: WARNING: unrecognized options: --with-mcrypt, --with-libmbfl, --enable-gd-native-ttf

说明上面的配置参数已经弃用了,删除即可。

2、configure: error: DBA: Could not find necessary header file(s).

安装下 yum install gdbm-devel

3、configure: error: Cannot find ldap libraries in /usr/lib

拷贝下文件 cp -frp /usr/lib64/libldap* /usr/lib/

4、configure: error: off_t undefined; check your library configuration

进行如下操作:

vi /etc/ld.so.conf

# 添加如下几行

/usr/local/lib64

/usr/local/lib

/usr/lib

/usr/lib64

# 保存退出

:wq

# 使之生效

ldconfig -v

5、configure: error: Please reinstall the libzip distribution

在 https://libzip.org/download/ 下载源码,进行安装

tar xf libzip-1.5.2.tar.gz

cd libzip-1.5.2

mkdir build && cd build && cmake .. && make && make install

6、CMake 3.0.2 or higher is required. You are running version 2.8.12.2

说明你的cmake版本过低,需要重新安装

先删除原有cmake

yum remove cmake

在 https://cmake.org/download/ 下载源码

tar xf cmake-3.14.3.tar.gz

cd cmake-3.14.3

./bootstrap && make && make install

然后修改 vi /etc/profile,并加入如下内容

PATH=/usr/local/bin:$PATH

export PATH

source /etc/profile

六、配置php.ini文件

具体的路径,大家可自行修改。

cp php.ini-development /data/nmp/php/etc/php.ini

cp /data/nmp/php/etc/php-fpm.conf.default /data/nmp/php/etc/php-fpm.conf

cp /data/nmp/php/etc/php-fpm.d/www.conf.default /data/nmp/php/etc/php-fpm.d/www.conf

配置php.ini文件

max_execution_time = 120

max_input_time = 120

memory_limit = 1024M

post_max_size = 128M

date.timezone = PRC

extension_dir = "/data/nmp/php/lib/php/extensions/no-debug-zts-20180731"

七、配置Systemd服务

其实php-fpm.service文件php已经帮我们配置好了,只需要我们复制到指定位置,并启用就行了。

cp sapi/fpm/php-fpm.service /usr/lib/systemd/system/

php-fpm.service文件内容如下:

[Unit]

Description=The PHP FastCGI Process Manager

After=network.target

[Service]

Type=simple

PIDFile=/data/nmp/php/var/run/php-fpm.pid

ExecStart=/data/nmp/php/sbin/php-fpm --nodaemonize --fpm-config /data/nmp/php/etc/php-fpm.conf

ExecReload=/bin/kill -USR2 $MAINPID

PrivateTmp=true

[Install]

WantedBy=multi-user.target

启用php-fpm.service

systemctl enable php-fpm.service

启动php-fpm

systemctl start php-fpm.service

内容来源于网络如有侵权请私信删除

centos7 编译php5.3,centos7下编译安装php7.3相关推荐

  1. opencv编译python库_linux 下编译安装 opencv-python

    编译参考 Docker环境下编译,内部整理的详细的编译选项和整个编译的流程,可以直接用,也可以参考: https://github.com/SkeLLLa/docker-ffmpeg-opencv h ...

  2. 安装php5、卸载php、安装php7的教程

    首先安装php5很简单  yum install php  然后如果不想用php5的话那就卸载吧 注意只使用yum remove命令是行不通的  那我们先  yum remove php  然后你需要 ...

  3. contos6.5卸载php7,centos安装php5、卸载php、安装php7的教程

    首先安装php5很简单 yum install php 然后如果不想用php5的话那就卸载吧 注意只使用yum remove命令是行不通的 那我们先 yum remove php 然后你需要 rpm ...

  4. php 编译mcrypt,centos 6下编译安装php时安装mcrypt支持库

    centos6本身不带mcrypt库的支持,手工编译php时,还需要先安装该库,这里有两个途径 1. 使用第三方源实现yum安装,推荐使用RPMforge,在centos下配置该yum源,配置后即可尝 ...

  5. linux 保存编译log,(转)Linux下编译安装log4cxx

    一个项目的服务器端在Linux平台下,用到了开源日志库log4cxx,这个库是apache项目的一个子库.功能很不错.下面记录下它的编译和安装过程. 第一步安装apr-1.3.8,顺序不能错,它必须首 ...

  6. ffmpeg php win32,解决PHP5.3.x下ffmpeg安装配置问题

    本人的环境: OS : windows 7 64位 WAMP:2.1a PHP:5.3.3(之前是5.3.13) 项目需要用ffmpeg-php实现上传视频转码截图等功能,但是找了很多资料都没有把ff ...

  7. linux emule 编译 wx-config --libs,linux下编译wxwidgets所写程序所遇到的问题

    记录linux下编译wxwidgets所遇到的问题 1./home/hrd/baohualib/wxWidgets-3.0.2/include/wx/platform.h:184:22: 致命错误: ...

  8. linux编译ffmepg,在Ubuntu下编译FFmpeg

    在之前,我们成功地使用mingw+msys在Windows平台下编译FFmpeg(见 http://www.linuxidc.com/Linux/2014-11/109839.htm),并生成了ffp ...

  9. linux编译ffmpeg.exe,linux下编译FFmpeg

    linux下编译FFmpeg 2020年01月11日 阅读数:12 这篇文章主要向大家介绍linux下编译FFmpeg,主要内容包括基础应用.实用技巧.原理机制等方面,希望对大家有所帮助. 1.首先获 ...

  10. ubuntu 编译java 语言_ubuntu下编译java程序

    ubuntu下编译java程序 首先需要安装jdk,并配置好相应环境变量 下面以简单的HelloWorld为例 文件名为HelloWorld.java java代码: public class Hel ...

最新文章

  1. wake_lock_timeout的使用方法【转】
  2. localStorage
  3. 骑芯供应链(T 面试)
  4. 长沙望城:当好“贴心人” 扎牢“人民根” 坚守“云阵地”
  5. javascript-排序算法
  6. cwntos新建目录挂载磁盘_详解Linux磁盘挂载、分区、扩容操作的实现方法
  7. 【mysql分区分表】mysql 按时间分区 【partition】
  8. 轻松实现 CTreeCtrl 的全选与反选
  9. 【Elasticsearch】es查看有问题的索引或者分片
  10. http://blog.csdn.net/x86android/article/details/16980967
  11. 3.算法通关面试 --- 哈希表和集合
  12. ThinkPHP——重复输出解决办法
  13. android 模仿今日头条ViewPager+TabLayout
  14. 查看JDK版本和安装路径
  15. Android手机指纹驱动工作原理
  16. 群体遗传学瓶颈效应bottleneck effect
  17. 【Pic】图片怎么去除马赛克?
  18. 少林寺公布武功秘籍 揭开绝技神秘面纱(组图)
  19. 蓝牙打印机PHP代码,小程序调用蓝牙打印机完整代码
  20. 电子会员卡管理系统卡具配置

热门文章

  1. 数据传输服务 DTS > 产品简介 > 功能特性 > 数据订阅(旧版)
  2. 压测学习总结(5)——如何使用Jmeter 进行简单的并发操作
  3. Docker学习总结(17)——学会使用Dockerfile
  4. Maven学习总结(21)——Maven常用的几个核心概念
  5. 软件路由测试,软路由测试
  6. 智能指针的释放_堆栈里的悄悄话——智能指针
  7. android 拉伸view,安卓ImageView拉伸展示
  8. Java实现websocket
  9. AES加密的C语言实现
  10. 数据驱动工程:跟踪使用,合理决策