首页 文章

编写器警告:缺少openssl扩展名 . 如何在WAMP中启用

提问于
浏览
130

尝试通过Setup InstallerWin7/64 + WampServer 2.2 上安装Composer依赖关系管理工具,我收到以下消息:

缺少openssl扩展,这将降低Composer的安全性和稳定性 . 如果可能,您应该启用它或使用--with-openssl重新编译php

所以这就是我所做的......

  • 从托盘中的Wamp图标,单击 php > php extensions > php_openssl

  • 这表明任务是通过在扩展名旁放置 check mark 来完成的

  • 然后我重新启动了WampServer

  • 然后从托盘中的Wamp图标,我点击 php > php.ini 并搜索openssl以验证它没有被评论出来 . 它不是 .

  • 然后我回到Composer-Setup.exe并再次尝试 . Same Warning Message :"openssl extension is missing"

  • never 使用OpenSSL,我不确定应该设置什么,所以我尝试使用https浏览到我的本地站点之一 . 它失败了 .

我错过了什么?

请指教 .

13 回答

  • 2

    打开wamp / bin / apache / apache2.4.4 / bin / php配置.. wamp / bin / php / php5.4.16 / php conf设置,php-ini制作,php-ini dev,phpForApache找到 extension=php_openssl.dll 并取消注释 ;

  • 26

    简短而甜蜜,在 wamp/bin/php/php5.3.13 (或任何php版本)中取消注释这一行:
    ;extension=php_openssl.dll (删除 ;
    现在运行Composer的命令行安装 . 你不会有错误 .
    很高兴去!

  • 5

    是的,您必须打开php.ini并删除分号:

    ;extension=php_openssl.dll
    

    除掉 ”;”像这样,它会工作 .

    extension=php_openssl.dll
    

    快乐的编码 .

  • 2

    为了安装Composer,下面的步骤让我:(WAMP版本2.4 x64bit)

    edit ->
    **C:\wamp\bin\php\php5.4.12\php.ini**
    ;;uncomment below line or remove the semicolons ';'
    extension=php_openssl.dll
    
    **C:\wamp\bin\apache\Apache2.4.4\bin\php.ini**
    
    extension=php_openssl.dll
    
  • 2

    你需要编辑“c:\ Program Files \ wamp \ bin \ php \ php5.3.13 \ php.ini”文件搜索:; extension = php_openssl.dll

    在开头删除分号

    注意:如果保存文件不起作用,则需要以管理员身份进行编辑 . (在win7上)转到开始菜单,搜索记事本,右键单击记事本,单击“以管理员身份运行”

    在作曲家安装窗口中,只需单击后面然后单击(或关闭它然后重新开始)它应该可以工作

  • 1

    WAMP在CLI和Apache中使用不同的php.ini文件 . 当您通过WAMP UI启用php_openssl时,您为Apache启用它,而不是为CLI启用它 . 您需要修改C:\ wamp \ bin \ php \ php-5.4.3 \ php.ini以启用它 .

  • 316

    除了取消注释 php.ini 中其他人都提到的 ;extension=php_openssl.dll 行之外,您还必须确保 ;extension_dir = "ext" 行也被取消注释 . 要取消注释,请删除带前缀的分号并保存 .

    该行可能已经在WAMP和XAMPP等软件包中取消注释,但它值得验证 . 此外,您必须通过将其中一个示例(如 php.ini-development )复制到新文件然后将其命名为 php.ini 来创建 php.ini 文件 . 然后在那里进行这些更改 .

    此外,在将来,为了安装PHP和Composer等工具,我建议使用Chocolatey包管理器 . 然后它就像 choco install composer 一样简单 . 当然,在使用choco方法安装Composer之前,您仍然需要编辑php.ini . 在Windows的未来版本中,package management tools like Chocolatey will be baked into Windows与Ubuntu中的 apt-get 相同 . 开发人员激动人心的时刻!

    使用任一方法,在安装Composer之后,不要忘记重新启动终端 . 无论您是使用命令提示符,Bash(使用Git安装)还是Powershell,您都需要在更新的环境变量工作之前重新启动它 .

  • 0

    即使启用了openssl,我也遇到了同样的问题 . 问题是Composer安装程序正在查看此配置文件:

    C:\ WAMP \ BIN \ PHP \ php5.4.3 \ php.ini中

    但是加载的配置文件实际上在这里:

    C:\ WAMP \ BIN \ apache的\ apache2.2.22 \ BIN \ php.ini中

    所以我只需要在第一个php.ini文件中取消注释它就可以了 . 这是默认情况下WAMP在我的机器上的安装方式 . 我没有改变任何东西,所以这可能也会发生在其他人身上 . 这与上面的Augie Gardner的答案基本相同,但我只想指出你可能有两个php.ini文件 .

  • 0

    在两者中取消注释 ;extension=php_openssl.dll

    wamp\bin\php\php5.4.12\php.ini
    wamp\bin\apache\Apache2.4.4\bin\php.ini
    

    它会工作

  • 1

    C:\ laravel-master> composer create-project laravel / laravel安装laravel / laravel(v4.0.6) - 安装laravel / laravel(v4.0.6)[RuntimeException]你必须启用openssl扩展来通过https下载文件

    我正在使用EasyPhp(WAMP类型) . 在任务栏的EasyPHP图标中,右键单击并选择配置,然后选择PHP . 我将在记事本中打开 PHP.ini 文件配置,在记事本中搜索查找或CTRL F中的单词 OPENSSL 你会发现这个 ;extension=php_openssl.dll 只是删除了;并且 extension=php_openssl.dll 处于活动状态 .

    C:\ laravel-master> composer create-project laravel / laravel安装laravel / laravel(v4.0.6) - 安装laravel / laravel(v4.0.6)下载:100%在C:\ laravel-master \ laravel中创建项目包含信息的composer存储库安装依赖项(包括require-dev)

  • 12

    你应该为php.ini创建一个符号链接 . 抱歉russian link .

  • 0

    所有这些答案都很好,但实际上,如果您想了解,如果您希望所有未注释的扩展都能正常工作,则扩展目录必须正确 . 可以写一个物理或相对路径

    extension_dir = "C:/myStack/php/ext"
    

    要么

    extension_dir = "../../php/ext"
    

    这是相对于httpd.exe Apache Web服务器(C:\ myStack \ apache \ bin)但是如果你想让它与 Composer 或任何你需要 physical path 一起使用,因为cli模式不使用web服务器!

  • 16

    我面临同样的问题 . 我将我的php文件夹从 php7_winxxxx 重命名为php,它运行正常 . 看起来像作曲家正在检查 c:/php/ext 中php_openssl模块的位置 .

    您可能还需要将 c:/php 添加到环境变量中的 PATH

相关问题