我使用自制软件安装了 gnupg 和 gpgme。我还链接了两者,并通过运行 brew gnupg install 和 brew gpgme install 确保它们已安装和链接,并收到确认安装和版本的消息。
我已将 gnupg.so 文件放在扩展路径中,并将 extension=gnupg.so 添加到 php.ini 文件中。
我从 infophp 页面获得了扩展路径和特定的 php.ini 路径。重新启动 mamp 后,我仍然看不到 gnupg 或 gpgme 作为 phpinfo 的扩展,我也不能在我的 php 代码中使用 gnupg。
使用$gpg = new \gnupg();
它会给我错误说 gnupg 类不存在。
[Symfony\Component\Debug\Exception\FatalThrowableError]
Class 'gnupg' not found
我尝试了另一种方法:我还从他们的网站手动下载了 gnupg 和 gpgme 提取它们运行如下
。/配置,
制作,
须藤使安装,
并且能够再次成功安装,还确保 gnupg.so 位于 phpinfo 页面中显示的扩展路径相同的路径中,并且还添加extension=gnupg.so
到 phpinfo 页面中显示的相同 php.ini 中(我添加了 extension=gnupg .so 在 php.ini 文件中的所有其他扩展名之后)
我在用:
mac os 高山脉 10.13.3
php 7.1.12
地图 4.4.1
gnupg 2.2.5(我用 brew install 试过这个版本)
gnupg 1.4.0(我试过这个版本,从 gnupg.org 下载)
gpgme 1.10.0
我也想知道,在希望解决上述问题之后,我是否需要在我的 php 文件中包含任何内容才能使用 gnupg?
gnupg 和 gpgme 有什么区别?为了加密php中的文件,我需要两者吗?
如果我无法解决此问题,还有什么方法可以加密 xml 文件或包含文本数据的文件?我需要将文件和 FTP 加密到另一台服务器并在那里解密。
预先感谢大家的帮助