我在问题标题中收到错误消息,或者确切地说,我收到此消息
PHP Startup: Unable to load dynamic library 'openssl' (tried: /usr/lib/php/20170718/openssl (/usr/lib/php/20170718/openssl: cannot open shared object file: No such file or directory), /usr/lib/php/20170718/openssl.so (/usr/lib/php/20170718/openssl.so: cannot open shared object file: No such file or directory)) in Unknown
我真正的问题是它只是有时而不是总是发生。一秒钟内,请求有效,而另一秒钟,我在同一请求上收到一条 500 内部错误,并显示此消息。
在我启用 apache proxy
和 proxy_wstunnel
mods 后,这种情况开始发生,但也可能是 apt-get update
或 apt-get update
。
来自 phpinfo();
:
- 版本:PHP 版本 7.2.4-1+ubuntu16.04.1+deb.sury.org+1
- 已启用 OpenSSL 支持
- OpenSSL 库版本 OpenSSL 1.1.0h 2018 年 3 月 27 日
- OpenSSL 标头版本 OpenSSL 1.1.0h 2018 年 3 月 27 日
- Openssl 默认配置 /usr/lib/ssl/openssl.cnf
如果您需要更多信息,请随时完成任务。
编辑:
来自apache error.log
PHP警告:PHP启动:无法加载动态库“openssl”(尝试过:/usr/lib/php/20170718/openssl(/usr/lib/php/20170718/openssl:无法打开共享对象文件:没有这样的文件)文件或目录),/usr/lib/php/20170718/openssl.so(/usr/lib/php/20170718/openssl.so:无法打开共享对象文件:没有这样的文件或目录))在第 0 行未知< /p>[Fri Apr 20 06:25:01.973125 2018] [mpm_prefork:notice] [pid 2872] AH00163:Apache/2.4.18 (Ubuntu) 已配置 -- 恢复正常操作
[2018 年 4 月 20 日星期五 06:25:01.973154] [核心:通知] [pid 2872] AH00094:命令行:'/usr/sbin/apache2'
[Fri Apr 20 06:34:04.715749 2018] [php7:error] [pid 3490] [client 5.146.199.236:41654] PHP 致命错误:未捕获 yii\web\HeadersAlreadySentException:标头已在 /var/www 中发送/html_back/vendor/yiisoft/yii2/web/Response.php 第 414 行。位于 /var/www/html_back/vendor/yiisoft/yii2/web/Response.php:366\n堆栈跟踪:\n#0 /var/ www/html_back/vendor/yiisoft/yii2/web/Response.php(339): yii\web\Response->sendHeaders()\n#1 /var/www/html_back/vendor/yiisoft/yii2/web/ErrorHandler.php (135): yii\web\Response->send()\n#2 /var/www/html_back/vendor/yiisoft/yii2/base/ErrorHandler.php(262): yii\web\ErrorHandler->renderException(对象(yii) \base\ErrorException))\n#3 [内部函数]: yii\base\ErrorHandler->handleFatalError()\n#4 {main}\n 抛出 /var/www/html_back/vendor/yiisoft/yii2/web/ Response.php 第 366 行
[Fri Apr 20 06:34:58.208208 2018] [php7:error] [pid 3486] [client 5.146.199.236:41681] PHP 致命错误:未捕获 yii\web\HeadersAlreadySentException:标头已在 /var/www 中发送/html_back/vendor/yiisoft/yii2/web/Response.php 第 414 行。位于 /var/www/html_back/vendor/yiisoft/yii2/web/Response.php:366\n堆栈跟踪:\n#0 /var/ www/html_back/vendor/yiisoft/yii2/web/Response.php(339): yii\web\Response->sendHeaders()\n#1 /var/www/html_back/vendor/yiisoft/yii2/web/ErrorHandler.php (135): yii\web\Response->send()\n#2 /var/www/html_back/vendor/yiisoft/yii2/base/ErrorHandler.php(262): yii\web\ErrorHandler->renderException(对象(yii) \base\ErrorException))\n#3 [内部函数]: yii\base\ErrorHandler->handleFatalError()\n#4 {main}\n 抛出 /var/www/html_back/vendor/yiisoft/yii2/web/ Response.php 第 366 行
P粉5556967382024-03-26 09:06:31
我也遇到了同样的问题。
看起来我是通过手动启用创建的
extension=openssl
在 php.ini 中。再次禁用它后,一切看起来都很好
php -i | grep -i openssl SSL Version => OpenSSL/1.1.0g openssl OpenSSL support => enabled OpenSSL Library Version => OpenSSL 1.1.0g 2 Nov 2017 OpenSSL Header Version => OpenSSL 1.1.0g 2 Nov 2017 Openssl default config => /usr/lib/ssl/openssl.cnf openssl.cafile => no value => no value openssl.capath => no value => no value Native OpenSSL support => enabled