我正在尝试在WAMP设置中安装Laravel。我收到一条警告消息,指出我没有启用 openssl ,而这已经在WAMP中完成了。
以下是该消息的屏幕截图。
答案 0 :(得分:115)
WAMP和Composer可能正在使用不同的PHP安装。 Composer将使用PATH
环境变量中的PHP集。
如果要启用 openssl 扩展程序来安装 Composer ,首先需要检查PHP安装的位置。
echo %PATH%
,然后检查PHP安装的位置。php.ini
的文件。extension=php_openssl.dll
。现在您可以安装Composer。
答案 1 :(得分:61)
我以不同的方式解决了我的问题。问题是wamp的GUI有误导性:它声称我已启用php_openssl
..如果我在同一个GUI上点击php.ini
,它实际上显示extension=php_openssl.dll
未被注释。 。
我不确定我是否使用了OP的编辑器的相同安装程序版本,但它实际上要求您在开头指定您希望应用编写器的php.exe
(这基本上可以确保没有人试图将作曲家应用于错误的php可执行文件,如OP)所发生的那样。
我解决这个问题的方法是自己进入wamp软件包中安装php:C:\wamp\bin\php\php5.4.12
并在那里查看php.in
..当我打开它时,我感到震惊的是{{1}实际上已经评论过了!我取消评论它并且它运作得很好。
答案 2 :(得分:50)
我遇到了同样的问题,在这里我找到了解决方案,在你的 php.ini 上你需要做一些改变:
extension_dir = "ext"
extension = php_openssl.dll
这里的每个人都会讨论openssl扩展,但是在windows中你也需要激活扩展dir。
答案 3 :(得分:25)
对于WAMP服务器,“Enrique”给出的评论解决了我的问题。
wamp正在使用 php.ini :
c:\wamp\bin\apache\Apache2.4.4\bin\php.ini
但是作曲家正在使用来自CLI的PHP,因此它正在阅读这个文件:
c:\wamp\bin\php\php5.4.12\php.ini (so you need to enable openssl there)
对于作曲家,您必须在
中启用扩展程序c:\wamp\bin\php\php5.4.12\php.ini
变化:
;extension=php_openssl.dll
到
extension=php_openssl.dll
答案 4 :(得分:12)
如果你在Windows 没有其中一个WAMP堆栈上执行此操作,请按照以下步骤进行操作
C:\php
。 Composer的安装程序在没有任何其他提示的情况下找到它php.ini
。相反,您将看到两个文件,如下所示。将其重命名为php.ini
或将其复制到php.ini
。
打开您的php.ini
文件并从此行中删除分号(您可能还想取消注释其他内容,但此行是Composer唯一必需的行)
;extension=php_openssl.dll
这应该就是你需要做的一切。 Composer安装程序应该从此处完成您需要的所有其他操作。
答案 5 :(得分:11)
你需要启用" extension = php_openssl.dll"在两个文件(PHP和Apache)中。我的pc文件路径是这些:
答案 6 :(得分:7)
这是一个老问题,但我遇到了同样的问题(使用PHP7),最终解决方案非常简单。尽管如此,根据其他答案取消注释php.ini
中的行是不够的。我需要改变它:
;extension=php_openssl.dll
为:
extension=ext/php_openssl.dll
请注意ext
前缀。 dll已经存在但是在子文件夹中。更改配置后,composer安装程序很高兴。
答案 7 :(得分:7)
您需要在
中启用openssl扩展程序C:\wamp\bin\php\php5.4.12\php.ini
这是具有类型的php配置文件,其“配置设置”带有驱动程序 - 记事本,如图标。
在openssl扩展名之前有一个分号
;extension=php_openssl.dll
删除分号,你将
extension=php_openssl.dll
答案 8 :(得分:6)
有两个php.ini
个文件,一个用于开发,一个用于生产。保留这些文件,在其上方有一个用于配置设置的php.ini
文件,其中包含图标编辑等设备。
答案 9 :(得分:3)
编辑"右"文件(所有php.ini' s)。我还有这个问题。 我的解决方案是:
添加系统变量:OPENSSL_CONF
OPENSSL_CONF的值应该是当前php版本的openssl.cnf文件。
对我来说是:
- >重启WAMP - >现在应该工作
答案 10 :(得分:2)
我遇到了同样的问题,但是当我在浏览php.ini和php.exe时,我发现php.exe在C:\ UwAmp \ bin \ php \ php-5.4.15,当时php.ini在C:\ UwAmp \ BIN \ apache的。 我只是在C:\ UwAmp \ bin \ php \ php-5.4.15复制php.ini并取消注释行extension = php_openssl.dll并修复它。
答案 11 :(得分:2)
我正在使用WAMP服务器。
实际上它的文件显示openssl已打开。
但手动我去了文件夹并编辑了php.ini
。
然后我发现它没有打开openssl.I取消注释它并在WAMP重新启动后工作。
答案 12 :(得分:2)
C:\瓦帕\ BIN \ PHP中\ php5.3.13
浏览到以下行:
;extension=php_openssl.dll
并删除该行前面的分号。重新启动您的WAMP服务器服务(点击图标托盘>'重启所有服务'
答案 13 :(得分:1)
Wamp与另一个位于C:\ wamp \ bin \ apache \ Apache2.4.4 \ bin \ php.ini中的php.ini一起使用。所以你需要手动找到正确的文件,即C:\ wamp \ bin \ php \ php5.4.12 \ php.ini。取消注释extension = php_openssl.dll行,然后尝试再次安装Composer。
答案 14 :(得分:1)
如果您是从源代码编译的,那么将extension=php_openssl.dll
添加到php.ini文件可能无法正常工作。
要解决此问题,请打开命令提示符并键入php -i
。向上滚动到第一行,它会告诉您有关php.ini文件的最新错误。
要解决此问题,请找到php_openssl.dll
文件,对我而言,它位于编译输出的同一目录中:
C:\php-sdk\bin\phpdev\vc14\x64\php-7.0.13-src\x64\Release_TS
所以只需将扩展名所在的目录添加到php.ini
:
extension_dir = "C:\php-sdk\bin\phpdev\vc14\x64\php-7.0.13-src\x64\Release_TS"
希望错误消失
答案 15 :(得分:1)
对于那些和我一样有同样问题的人。完成上述所有解决方案后,仍然无法为我工作。我发现,uWamp正在bin / apache目录中创建PHP.INI文件。所以我不得不将PHP.INI文件复制到php安装目录,即bin / php / phpXXXX目录。这也应该是你从作曲家设置中选择的php.exe。
希望这有帮助。
答案 16 :(得分:1)
如果你仍然无法解决你的问题,请看看这个。这可能是您正在寻找的解决方案
C:\ wamp \ bin \ php \ php x-y-z文件夹中有几个php.ini文件。您可以找到生产,开发和其他一些php.ini文件。无需编辑生产和开发文件。找到与下图完全相同的文件。 (你可以找到它。只需在搜索栏中键入php.ini并进行搜索)。打开文件并删除;来自extension = php_openssl.dll。保存文件并关闭它。重新启动Wampp服务器中的所有服务。重新安装你的作曲家。
就是这样。
答案 17 :(得分:0)
如果您正在使用xampp。返回到您在安装开始时选择要使用的命令行php的位置,并选择包含xampp文件夹的路径。之后如果您的安装程序说您有重复'延长= php_openssl.dll'使用';'在您的php ini中注释一个ssl文件,您的安装应该顺利运行。