如何在Laravel安装上解决MAC OS上的卷曲证书问题?

时间:2015-04-22 09:10:24

标签: php macos laravel curl composer-php

安装Laravel时

$ composer global require "laravel/installer=~1.1"

获取此错误

The "https://packagist.org/packages.json" file could not be downloaded: no valid certs found cafile stream: `/usr/local/etc/openssl/cert.pem'
Failed to enable crypto
failed to open stream: operation failed
https://packagist.org could not be fully loaded, package information was loaded from the local cache and may be out of date

更新

命令composer self-update也会引发以下错误

[Composer\Downloader\TransportException]                                                                                               
  The "https://getcomposer.org/version" file could not be downloaded: no valid certs found cafile stream: `/usr/local/etc/openssl/cert.  
  pem'                                                                                                                                   
  Failed to enable crypto                                                                                                                
  failed to open stream: operation failed  

我在OSX 10.9.5中使用XAMPP5.6.3(xampp-osx-5.6.3-0-installer)

我从curl下载了证书但没有工作。

2 个答案:

答案 0 :(得分:6)

问题解决了:

1)下载证书文件(使用wget下载非常重要,因为复制粘贴html文件对我不起作用)

$ brew install wget
wget http://curl.haxx.se/ca/cacert.pem

2)复制文件并粘贴到以下目录(确保有读写权限)

/Applications/XAMPP/xamppfiles/share/openssl/cacert.pem

3)将以下行添加到php.ini

openssl.cafile=/Applications/XAMPP/xamppfiles/share/openssl/cacert.pem

4)重启Apache

5)运行命令composer global require "laravel/installer=~1.1"将安装Larvel。

答案 1 :(得分:0)

在Macosx上,curl可以在cacert.pem中安全下载:

echo "Downloading cacert.pem..."
curl -sSL http://curl.haxx.se/ca/cacert.pem >> cacert.pem
mkdir -p /usr/local/etc/openssl/certs
mv -v cacert.pem /usr/local/etc/openssl/certs

有关CA文件引导的更多信息

brew info openssl