首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法加载动态库“php_libsodium”

无法加载动态库“php_libsodium”
EN

Stack Overflow用户
提问于 2017-03-08 21:34:58
回答 3查看 8.8K关注 0票数 6

我正在尝试安装libsodium扩展(https://pecl.php.net/package/libsodium/1.0.6/windows)。

当我运行php -m时,list会出现在列表中。但是,当我转到phpinfo时,没有列出它。

我还注意到apache给了我错误:PHP Warning: PHP Startup: Unable to load dynamic library 'C:\\xampp\\php\\ext\\php_libsodium.dll' - The specified module could not be found.\r\n in Unknown on line 0

我已经检查过多次,文件肯定在那里,并且匹配正确的体系结构和线程安全,所以我不知道还会导致什么原因。

任何帮助都将不胜感激。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2017-03-08 23:09:09

根据我的经验,您可以得到“无法加载动态库”消息,原因有以下几点:

  1. 您已经在php.ini中启用了一个模块,但是PHP找不到dll文件(或者它不存在,或者它在错误的目录中)。
  2. dll文件是为错误的体系结构(32位对64位)或错误的线程模型(例如,在非线程安全的PHP版本上使用线程安全DLL )而编译的。
  3. dll有一些无法找到的依赖项。例如,您可能需要一些额外的.dll文件放在PHP能够找到它们的位置(例如,在主PHP目录中)。

在您的例子中,考虑到使用php -mphinfo() (大概在网页中)所报告的内容之间存在差异,#1可能是原因之一。扩展将在extension_dir设置在php.ini中指定的位置中查找。如果这是一个相对路径,那么它在web服务器的上下文中的解析可能与从命令行运行时不同。

票数 6
EN

Stack Overflow用户

发布于 2021-05-07 08:19:09

尝试将xampp\php\libsodium.dll复制到xampp\apache\bin\libsodium.dll并重新启动apache。在XAMPP 8.0.5Me上帮忙。

票数 2
EN

Stack Overflow用户

发布于 2019-11-15 08:37:27

试着安装install:

验证php和pecl php -v pecl版本

如果您有php7.X,那么: sudo安装-f libsodium

如果您在一个Docker容器内: pecl安装-f inside

将sodium.so扩展添加到php.ini。

sudo回声“etc= sodium.so”>/etc/php/7.1/mods-可用/sodium.ini sudo phpenmod钠

验证扩展名是否已安装了php -i \ grep“钠”

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42682340

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档