记录一次PHP启动失败
手动编译安装 Libsodium 库,解决 PHP启动失败。
问题
在部署一个站点时,在安装了 PHP 7.4
的情况下安装 PHP 8.2
,然而安装完成后启动报错。
具体报错内容如下:
1/www/server/php/82/sbin/php-fpm: symbol lookup error: /www/server/php/82/sbin/php-fpm:undefined symbol: crypto_pwhash_scryptsalsa208sha256_opslimit_interactive
解决
直接谷歌搜索报错内容,发现宝塔面板论坛有相关问题:php无法启动的N种常见错误解决教程 情况七,给出的解决办法是重新编译安装,然而编译安装后仍未解决(也有成功的,可以先试试)。CSDN
也有相关问题,并在 Serverfault
找到了解决方法,来源在文末。
方法就是重新编译安装 libsodium
具体步骤如下:
- 删除
usr/local/lib
目录下相关libsodium
文件 - 下载
tar
包,并解压
1wget <https://download.libsodium.org/libsodium/releases/libsodium-1.0.19-stable.tar.gz>
2# 建议稳定版 <https://download.libsodium.org/libsodium/releases/>
3tar -zxvf libsodium-1.0.19-stable.tar.gz
- 编译安装
1cd ./libsodium-stable
2./configure
3make && make check
4sudo make install
完成后即可成功启动。
参考
最后修改于 2024-01-26