当前位置: 首页 > news >正文

ubuntu24.04 编译安装PHP7.4

ubuntu24.04 编译安装PHP7.4

先安装依赖包(原本是centos上安装依赖,让chatgpt转换了下对应的ubutnu下包名,如果编译过程有缺失,按报错提示再安装下)

apt install zlib1g zlib1g-dev libpcre3 libpcre3-dev libfreetype6 \
libfreetype6-dev libssl-dev libcurl4-openssl-dev libxslt1-dev libgd-dev libc6-dev \
libglib2.0-0 libglib2.0-dev libmcrypt-dev libmhash-dev libicu-dev libncurses5-dev \
libjpeg-dev libpng-dev libxml2-dev libbz2-dev libsqlite3-dev libonig-dev \
imagemagick libmagickwand-dev unixodbc unixodbc-dev

安装liviconv 1.17(ubuntu24.04可略过)

wget https://jinchuang.org/novel/php/libiconv-1.17.tar.gz
tar xf libiconv-1.17.tar.gz
cd libiconv-1.17/
./configure --prefix=/usr/lcoal/libiconv && make && make install
echo "/usr/local/libiconv/lib" >>/etc/ld.so.conf
ldconfig

安装openss(系统自带的3.0不行,安装3.3里面包含1.1的库)

wget https://github.com/openssl/openssl/releases/download/openssl-3.3.1/openssl-3.3.1.tar.gz
tar -xvf openssl-3.3.1.tar.gz
cd openssl-3.3.1/
./Configure --prefix=/opt/openssl --openssldir=/opt/openssl -fPIC -shared linux-x86_64
make -j4 && make install

设置pkgconfig,为默认openssl.cnf设置ENV

echo 'export PKG_CONFIG_PATH=/opt/openssl/lib/pkgconfig' >>/etc/profile
echo 'export OPENSSL_CONF=/usr/lib/ssl/openssl.cnf' >>/etc/profile
source /etc/profile

php安装

wget https://www.php.net/distributions/php-7.4.33.tar.bz2

解压进入php-7.4.33目录

./configure --prefix=/usr/local/php --enable-fpm --enable-gd --with-webp --with-jpeg --with-freetype --enable-intl  --enable-pcntl  --enable-mysqlnd --with-pdo-mysql=mysqlnd --with-mysql=mysqlnd --with-mysqli=mysqlnd  --with-curl --enable-soap --with-openssl-dir=/opt/openssl  --with-zip --enable-ftp --enable-xml --with-zlib --enable-sockets  --enable-mbstring --with-fpm-user=www --with-fpm-group=web

配置文件

cp sapi/fpm/php-fpm.service /usr/lib/systemd/system/
cp php.ini-production /usr/local/php74/etc/php.ini
cd /usr/local/php74/etc/
cp php-fpm.conf.default php-fpm.conf
cd php-fpm.d/
cp www.conf.default www.conf

增加启动服务

systemctl enable php-fpm

启停命令

systemctl start php-fpm
systemctl stop php-fpm
systemctl status php-fpm

修改启动器设置

nano /usr/lib/systemd/system/php-fpm.service


ProtectSystem=full
改成
ProtectSystem=false

然后重新加载服务

systemctl daemon-reload
systemctl stop php-fpm
systemctl start php-fpm
systemctl status php-fpm
http://www.lryc.cn/news/423330.html

相关文章:

  • Tied and Anchored Stereo Attention Network for Cloud Removal in Optical
  • 云开发微信小程序--即时聊天(单人聊天,多人聊天室)
  • Leetcod编程基础0到1-基础实现内容(个人解法)(笔记)
  • 仲阳天王星运维实习一面
  • 排序算法详解
  • vxe-table树形结构使用setCheckboxRow卡顿--已解决
  • 配置错误和 IAM 弱点是云安全的主要隐患
  • Redis系列之Redis Cluster
  • 网站证书过期导致WordPress后台无法登录问题解决,页面样式丢失
  • LeetCode刷题笔记第191题:位1的个数
  • C语言—函数栈帧
  • IDEA 2022.1.4用前需知
  • Python数据可视化案例——折线图
  • Ubuntu虚拟机安装及汉化
  • 记2024-08原生微信小程序开发
  • 嵌入式linux系统镜像制作day1
  • 【相机与图像】2. 相机内外参的标定的代码示例
  • 重启人生计划-拒绝内耗
  • 盘点电脑开机慢的几大高频原因
  • 2-64 基于matlab的Consensus-Based Bundle Algorithm (CBBA)算法
  • Win10 去掉桌面右上角 了解有关此图片的信息
  • tcpdump入门——抓取三次握手数据包
  • 漏洞复现-GitLab任意读取文件(CVE-2023-2825)
  • 二叉树——9.找树左下角的值
  • 如何用github制作个人网站
  • 二.PhotoKit - 相册权限(彻底读懂权限管理)
  • 二叉树------最小堆,最大堆。
  • 预约功能的知识整理
  • Linux的常用操作-02
  • Android Studio 连接手机进行调试