You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PHP 7.3.30 openssl扩展无法启用导致openssl_encrypt()函数未定义问题求助

解决PHP 7.3.30中openssl_encrypt()未定义的问题

我来帮你一步步排查这个问题,结合你已经做的操作,咱们从几个容易忽略的点入手:

1. 确认依赖DLL的放置位置

你已经把libeay32.dll和ssleay32.dll放到了PHP目录,但WAMP环境下,Apache进程加载PHP时,可能会从自身的bin目录读取依赖文件。建议你把这两个DLL同时复制到wamp64\bin\apache\apache[你的版本号]\bin目录下。另外要注意:必须下载64位的DLL文件,和你的WAMP64环境匹配,32位DLL会导致加载失败。

2. 检查PHP.ini的扩展路径配置

打开你加载的C:\wamp64\bin\php\php7.3.30\php.ini,找到extension_dir配置项,确保它指向正确的扩展目录:

extension_dir = "ext"
# 或者用绝对路径更稳妥:
extension_dir = "C:\wamp64\bin\php\php7.3.30\ext"

如果这个路径错误,PHP根本找不到php_openssl.dll文件,即使你开启了extension=php_openssl.dll也没用。

3. 务必重启WAMP所有服务

修改配置和添加DLL后,一定要在WAMP管理器中先停止所有服务,再重新启动。很多时候大家会忽略这一步,导致新的配置和文件没有被加载生效。

4. 检查PHP扩展文件是否存在

去C:\wamp64\bin\php\php7.3.30\ext目录下,确认php_openssl.dll是否存在。如果缺失,说明你的PHP安装包不完整,需要重新下载线程安全(TS)版本的PHP 7.3.30 64位,把缺失的扩展文件补上(WAMP使用的是线程安全版PHP)。

5. 查看PHP错误日志定位具体问题

打开php.ini,找到error_log配置项,查看日志文件路径,比如:

error_log = "C:\wamp64\logs\php_error.log"

打开这个日志文件,搜索关于openssl的错误信息,比如“Failed loading php_openssl.dll”之类的,日志会告诉你具体失败原因(比如依赖缺失、版本不兼容),能帮你更快定位问题。

6. 添加PHP目录到系统PATH环境变量

把C:\wamp64\bin\php\php7.3.30添加到系统的PATH环境变量中,这样系统在加载PHP依赖的DLL时能找到对应的文件。添加后重启电脑(或者至少重启WAMP服务),确保环境变量生效。

完成每一步后,你可以再次执行print_r(get_loaded_extensions())或者刷新phpinfo页面,检查openssl是否出现在加载的扩展列表中。如果还是不行,把错误日志里的具体信息贴出来,我再帮你进一步分析。

内容的提问来源于stack exchange,提问作者SandyK

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.30 19:32:46