背景:业务系统需要重centos迁移到openeuler;服务器不能联网,版本用openEuler20.03 SP3。此篇安装PHP采用离线rpm包方式。
下载在openEuler20.03 SP3中安装PHP所需要的rpm包
目前oepkgs 镜像源中已有2w+款软件包,可以在 https://search.oepkgs.net/search/ 上进行查询并下载使用;openEuler 第三方软件包镜像源 Oepkgs 仓库介绍可以去:
https://www.openeuler.org/zh/blog/liping/2022-11-10-oepkgs-introduction.html
安装php所需依赖如下(下方是此业务系统需要,可根据实际情况进行下载):
1. bzip2-devel-1.0.8-3.oe1.x86_64.rpm - bzip2 的开发库。bzip2 是一种压缩工具,-devel 包含头文件和库,用于开发需要压缩/解压缩功能的软件。 2. freetype-devel-2.10.2-3.oe1.x86_64.rpm - Freetype 的开发库。Freetype 是一个开源的字体渲染库,用于在图形界面中显示文本。此开发包提供编译时所需的头文件和库。 3. libcurl-devel-7.71.1-11.oe1.x86_64.rpm - libcurl 的开发库。libcurl 是一个用于传输数据的库,支持多种协议如 HTTP、FTP 等。开发包提供头文件和库,以便在应用程序中集成网络通信功能。 4. libjpeg-turbo-devel-2.0.5-1.oe1.x86_64.rpm - libjpeg-turbo 的开发库。libjpeg-turbo 是用于 JPEG 图像编码/解码的库,专为提高处理性能而设计。开发包用于开发涉及 JPEG 图像处理的软件。 5. libpng-devel-1.6.37-1.oe1.x86_64.rpm - libpng 的开发库。libpng 是一个处理 PNG 图像格式的库。此开发包包含头文件和库文件,允许开发人员编译支持 PNG 图像的应用程序。 6. libxml2-devel-2.9.10-24.oe1.x86_64.rpm - libxml2 的开发库。libxml2 是用于解析 XML 文档的库,广泛用于处理结构化数据。开发包用于开发需要解析或处理 XML 数据的应用程序。 7. libzip-1.5.1-4.oe1.x86_64.rpm - libzip 库。libzip 是一个处理 ZIP 压缩格式的库,提供对 ZIP 文件的创建、修改、提取等功能支持。 8. libzip-devel-1.5.1-4.oe1.x86_64.rpm - libzip 的开发库,包含头文件和库,用于开发涉及 ZIP 文件操作的应用程序。 9. libzip-help-1.5.1-4.oe1.noarch.rpm - libzip 的帮助文档,提供使用和开发 libzip 时的参考文档。 10. oniguruma-6.9.0-3.oe1.x86_64.rpm - Oniguruma 是一个正则表达式库,支持多种字符编码。这个包是库的运行时组件。 11. oniguruma-devel-6.9.0-3.oe1.x86_64.rpm - Oniguruma 的开发库,提供开发时的头文件和库,用于编写需要正则表达式处理功能的应用程序。 12. sqlite-devel-3.32.3-2.oe1.x86_64.rpm - SQLite 的开发库。SQLite 是一个嵌入式关系数据库,开发包用于开发涉及 SQLite 数据库的应用程序。 13. xz-devel-5.2.5-1.oe1.x86_64.rpm - xz 的开发库。xz 是一种高效的文件压缩工具,基于 LZMA 算法。开发包用于开发需要压缩/解压缩功能的软件。
把下载的rpm包上传到openEuler服务器中执行安装命令
rpm -ivh *.rpm
官网下载PHP,此篇下载的版本是php-7.4.33.tar.gz,下载地址为:
https://www.php.net/downloads.php
开始安装php:
#解压 tar -zxvf php-7.4.33.tar.gz #进入解压后文件夹 cd php-7.4.33 #执行 ./configure --prefix=/usr/local/php --with-config-file-path=/etc --enable-fpm --enable-sockets --enable-sysvshm --enable-mbstring --enable-xml --with-zip --enable-ftp --enable-gd --with-freetype --with-jpeg --with-zlib-dir --with-libxml --with-mhash --with-bz2 --with-curl --enable-bcmath --enable-soap #查看是否有缺少依赖,如有缺少需找到对应系统版本依赖下载安装 #通过后执行 make && make install
开始配置php
#在php源码文件夹中,复制php配置文件到/etc/文件夹下 cp ./php.ini-development /etc/php.ini #编辑配置文件 vim /etc/php.ini #修改如下配置 post_max_size = 800M upload_max_filesize = 50000M max_file_uploads = 1000 #修改后保存
配置php-fpm
cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf #添加用户和组 groupadd www-data useradd -g www-data www-data #默认情况下etc/php-fpm.d/下有一个名为www.conf.defalut的配置用户的文件,执行下面命令复制一个新文件并且打开: cp /usr/local/php/etc/php-fpm.d/www.conf.default /usr/local/php/etc/php-fpm.d/www.conf vim /usr/local/php/etc/php-fpm.d/www.conf #默认user和group的设置为nobody,将其改为www-data
启动php-fpm
/usr/local/php/sbin/php-fpm #验证是否启动 netstat -tln | grep 9000
ps -aux|grep php-fpm
启动成功如下: