1

我正在尝试使用 uwamp 在我的 Windows 7 上安装 Composer,但我收到此消息:php 版本中缺少 openssl 扩展。我打开 php_uwamp.ini 并复制并命名为 php.ini 并将 php_uwamp.ini 和 php.ini 更改为

;extension_dir = "ext"

extension_dir = "ext"

;extension=php_openssl.dll

extension=php_openssl.dll

在 php bin\php\php-5.6.30-Win32-VC11-x86 和 \bin\apache 中。但仍然有相同的错误信息。

4

1 回答 1

1

我在 Windows 7 x64 上使用 Uwamp 3.1.0 和 PHP 5.6.18 时遇到了同样的问题。

部分解决方案已在此处得到解答如何在 UwAmp CLI 中启用“openssl”?,但还有更多:)

Uwamp 的问题(如果我们没有提到他们应该已经回答了这个线程,而不是我们,用户:))是因为它使用的是自定义php_uwamp.ini文件,并且“正常” php.ini.. /bin/php/php-xxx/(仍然被许多 PHP 工具使用),实际上../bin/apache/php.ini文件中有 php.ini 文件,所以我通过使用扩展路径解决了这个问题文件。

问题是ext文件夹的相对路径,所以只需输入绝对路径就可以解决问题(对我来说也是如此)。

所以要写出确切的步骤:

  1. 找到您使用的 PHP 版本的 UwAmp PHP“bin”文件夹(例如 C:/Uwamp/bin/php/php-5.6.18/
  2. 找到“自定义 Uwamp” php_uwamp.ini文件并将其复制到与 php.ini 相同的文件夹中
  3. 打开该重复的 php.ini 文件并找到以下行:

;extension_dir = "ext" 或 ; extension_dir = "{PHPEXTPATH}"

  1. 现在在 UwAmp Apache“bin”文件夹中找到其他已经存在的php.ini文件((例如 C:/Uwamp/bin/apache/php.ini)并找到带有绝对路径的行(示例)

; extension_dir = "C:/UwAmp/bin/php/php-5.6.18/ext"

并通过取消注释将其使用到您的新文件 C:/UwAmp/bin/php/php-5.6.18/php.ini 中,当然检查绝对路径是否正确。

所以现在你在 PHP“bin”文件夹中的 php.ini 文件应该是这样的:

; Directory in which the loadable extensions (modules) reside.
; http://php.net/extension-dir
; extension_dir = "{PHPEXTPATH}" 
; On windows:
;extension_dir = "ext"
extension_dir = "C:/UwAmp/bin/php/php-5.6.18/ext" 
于 2017-03-28T10:43:00.977 回答