quyu 发表于 2023-4-26 11:56:32

【已完成】Debian 10.x 宝塔面板PHP7.4重新编译升级OpenSSL 1.1.1n

我使用腾讯云的轻量应用云(香港),安装Debian 10.2,为了保证保持系统最新,我在安装宝塔之前执下了以下命令:apt-get update -yapt-get full-upgrade -y我们先查看一下当前系统的OpenSSL版本,执行以下命令:openssl version -a
宝塔安装php小于8.0版本一般都会安装openssl 1.0.2r,我在宝塔论坛上查了很多贴,大多数人都没有安装成功,由于目前系统中默认安装了OpenSSL 1.1.1n,我就不再更新系统中的OpenSSL了,如果你系统仍然是1.0.xx的,请执行以下命令进行更新或安装:
wget https://www.openssl.org/source/openssl-1.1.1n.tar.gz
tar xzvf openssl-1.1.1n.tar.gz
cd openssl-1.1.1n
./config -Wl,--enable-new-dtags,-rpath,'$(LIBRPATH)'
make
sudo make install
openssl version -a


通过openssl version -a 查到的信息中的OPENSSLDIR就是我们需要的openssl配置路径目录,我查到我的目录是:/usr/lib/ssl

编辑 /www/server/panel/install/php.sh 脚本文件,找到 Install_Curl(),编辑位置如下图所示:


编辑脚本文件,找到Install_Configure(),编辑位置如下图所示:

最后执行以下命令重新安装PHP7.4
bash -x /www/server/panel/install/php.sh install 74
安装完成后,我们查询一下PHP7.4的phpinfo(),看看是否更新成功,如下图所示:

升级成功了,祝你们好运!

1501425925hwko 发表于 2023-5-7 18:05:30

腾讯云的CentOS这方法测试不可以用

1501425925hwko 发表于 2023-5-7 18:09:44

bash -x /www/server/panel/install/php.sh install 74 和你一样的环镜到这步就安装不了了

宝塔用户_iyipgx 发表于 2023-7-20 09:50:06

其实不必要这么麻烦

只要将下载的 openssl 1.1.1 安装在 /usr/local/openssl 目录就行
然后再执行
bash -x /www/server/panel/install/php.sh install 74

完整过程

1、下载 openssl
wget https://www.openssl.org/source/old/1.1.1/openssl-1.1.1t.tar.gz2、然后解压
tar -zxvf openssl-1.1.1t.tar.gz3、进入目录,注意 --prefx=/usr/local/openssl
cd openssl-1.1.1t && ./config --prefix=/usr/local/openssl 4、编译并安装
make -j4 && make install注:make install 后openssl 不要再执行其他操作和配置,不然会替换系统现有的openssl

5、重新安装 php7.4
bash -x /www/server/panel/install/php.sh install 74等待安装完,查看 phpinfo()openssl 已经是 1.1.1了

武汉宇轩 发表于 2023-10-17 15:40:30

本帖最后由 武汉宇轩 于 2023-10-17 21:21 编辑

./config -Wl,--enable-new-dtags,-rpath,'$(LIBRPATH)' enable-ec enable-ecdh enable-ecdsa enable-sm2 enable-sm3 enable-sm4
,开启SM2,SM3,SM4,关闭SSL验证,不然http不支持

宝塔用户_marbcz 发表于 2024-1-26 20:29:51

最简单的办法还是装个8.0以上版本然后替换更改的位置代码openssl改成openssl111

quyu 发表于 2024-2-24 15:58:11

宝塔用户_iyipgx 发表于 2023-7-20 09:50
其实不必要这么麻烦

只要将下载的 openssl 1.1.1 安装在 /usr/local/openssl 目录就行


确实,如果指定或替换原来系统上的/usr/local/openssl版本确实可以通过此方法实现。

quyu 发表于 2024-2-24 16:00:36

宝塔用户_marbcz 发表于 2024-1-26 20:29
最简单的办法还是装个8.0以上版本然后替换更改的位置代码openssl改成openssl111 ...

但并不是所有程序都适用于php8,有些现成的php程序系统仅支持php7的

宝塔用户_psfmoe 发表于 2024-9-23 09:12:48

本帖最后由 宝塔用户_psfmoe 于 2024-9-25 06:57 编辑

quyu 发表于 2024-2-24 16:00
但并不是所有程序都适用于php8,有些现成的php程序系统仅支持php7的确实,我用PHP8 网页就出错了。另外大佬 你再其他帖子的 方法,是不是比主楼这个更新,只改一行命令的, 80换成 74

宝塔用户_psfmoe 发表于 2024-9-23 13:30:55

1501425925hwko 发表于 2023-5-7 18:09
bash -x /www/server/panel/install/php.sh install 74 和你一样的环镜到这步就安装不了了
...

老友你这个 最后是怎么解决了?
页: [1]
查看完整版本: 【已完成】Debian 10.x 宝塔面板PHP7.4重新编译升级OpenSSL 1.1.1n