在安装TYPO3 CMS 7.4.0时,PHP OpenSSL扩展不工作


PHP OpenSSL extension not working while installing TYPO3 CMS 7.4.0

在安装TYPO3 CMS 7.4.0时,我得到消息:

PHP OpenSSL扩展不工作在尝试创建用于测试的新私钥时出错。请检查PHP OpenSSL扩展是否集成,是否安装正确。

win8.1 x64;PHP 5.6.12 VC11 x86线程安全;Apache 2.4.16 VC11 Win32

我已经阅读了类似的问题,并按照建议做了所有操作,但问题仍然存在。

我所做的是:

  • 在php.ini中没有注释extension=php_openssl.dll
  • 在phpinfo()中检查openssl是否启用:https://i.stack.imgur.com/yf7CF.png
  • 增加了一个环境变量"OPENSSL_CONF",其值为:https://i.stack.imgur.com/ZBtCB.png
  • 设置"openssl.exe"的路径:

    • set $TYPO3_CONF_VARS['SYS']['binSetup'] in
      …' typo3 ' sysext ' ' Configuration ' DefaultConfiguration.php核心"openssl = C: ' Apache24 ' bin ' openssl.exe '
  • 附加C:'Apache24'bin'到环境变量PATH

  • 重新启动apache/重启PC.

没有任何帮助。

  1. 你还建议检查什么?
  2. 如何使用cmd执行openssl_pkey_new()函数并检查openssl是否有问题?
编辑:

  1. 我仔细阅读了openssl。php官方网站的安装手册(抱歉,由于这里缺乏信誉,我不能发布超过2个链接^^),没有任何帮助

  2. 运行error_reporting(E_ALL);$test = openssl_pkey_new();echo $test;

我得到一个空白的页面在我的浏览器(而'display_errors = On'和'display_startup_errors = On'在php.ini)

XAMPP安装
  • 在XAMPP控制面板的shell中,openssl命令给出

    警告:无法打开配置文件:C:/xampp/apache/bin/OpenSSL .cnf

    而openssl.cnf位于C:/xampp/apache/conf/openssl.cnfPHP变量中有_SERVER["OPENSSL_CONF"] C:/xampp/apache/conf/openssl.cnf

    在CMD openssl命令中给出

    C:'WINDOWS'system32>openssl警告:无法打开配置文件:D: ' tmp ' openssl-1.0.1p ' vc11 ' x86/openssl.cnf OpenSSL>

  • libeay32.dll和ssleay32.dll都是1.0.1.16版本,在apache/bin和/php中是相同的

  • httpd-xampp.conf中有SetEnv OPENSSL_CONF "C:/xampp/apache/conf/openssl.cnf"

    1. 请尝试这里提到的所有选项:http://php.net/manual/en/openssl.installation.php

    2. 您可以使用php -a打开php shell并运行上述命令。或者你可以自己写一个简洁的php文件,然后在浏览器中运行:

      <?php
      error_reporting(E_ALL);
      $test = openssl_pkey_new();
      echo $test;