我正在尝试在Windows 10上安装laravel。我安装了composer来安装laravel,但这给了我下面的错误。
[Composer \ Exception \ NoSslException] openssl扩展名是 SSL / TLS保护必需,但不可用。如果你可以的话 不启用openssl扩展名,可以在禁用此错误 将'disable-tls'选项设置为true,则后果自负。
命令无关紧要,所有命令都会出现上述错误...
我检查了this个问题并使用了解决方案,但这对我不起作用。
我尝试了这些解决方案
composer config -g -- disable-tls true
extension=php_openssl.dll // open openssl extension in php.ini file. - I restarted apache after that but nothing changed
答案 0 :(得分:22)
我有同样的问题。为了确保作曲家能正常工作,我做了以下事情。
php --ini
校正前的样本输出:
Configuration File (php.ini) Path: C:\WINDOWS
Loaded Configuration File: (none)
Scan for additional .ini files in: (none)
Additional .ini files parsed: (none)
这里的C:\ WINDOWS是一个骗局。当我查看php安装目录时,发现没有php.ini。有两个文件php.ini-development
和php.ini-production
。只需将一个重命名为php.ini
那么当您进行php --ini
然后,打开php.ini文件并取消注释以下行
;extension_dir = "ext"
应该是
extension_dir = "ext"
然后以相同方式取消注释扩展。通常需要以下内容。 (但是请根据从作曲家命令中看到的消息找出您需要的内容)
extension=fileinfo
extension=gd2
extension=mbstring
extension=openssl
答案 1 :(得分:0)
在升级到 PHP 7.4.10(cli)
之前,我在Windows 10计算机上运行php7.2.x当我第一次提取php.ini文件时,令我惊讶的是它是空的。
为确保我在查看正确的文件,我做了
php --ini
我正在查看正确的文件。
我查看了XAMPP的 php 文件夹,发现了两个文件:
我复制了第一个文件的内容并粘贴到我的php.ini文件中。 然后,重新启动后,我看到大量其他模块没有加载。
然后,我进入php.ini文件的动态扩展部分,并取消了以下所有扩展的注释:
extension=bz2
extension=curl
extension=ffi
extension=ftp
extension=fileinfo
extension=gd2
extension=gettext
extension=gmp
extension=intl
extension=imap
extension=ldap
extension=mbstring
extension=exif ; Must be after mbstring as it depends on it
extension=mysqli
extension=oci8_12c ; Use with Oracle Database 12c Instant Client
extension=odbc
extension=openssl
extension=pdo_firebird
extension=pdo_mysql
extension=pdo_oci
extension=pdo_odbc
extension=pdo_pgsql
extension=pdo_sqlite
extension=pgsql
extension=shmop
在保存我的php.ini文件之后,然后重新启动Apache服务器agan。
这一次,一切正常!