2014-01-06 186 views
8

我无法使用ssl连接到站点,即https。如果URL以http开头,它可以成功地从互联网上下载文件。未安装ssl的Bower安装

bower安装将通过https下载依赖关系。反正它有通过http下载吗?

回答

11

我也有这个问题,我找不到一个优雅的方式来解决它。我的解决方法是:

  1. 转到您的全球NPM文件夹,找到 “凉亭” 文件夹(在Windows 7上是 “C:\用户\\应用程序数据\漫游\故宫\ node_modules”)。
  2. 在该文件夹,搜索default.js文件放在node_modules \凉亭,配置\ LIB \ UTIL \ default.js
  3. 在这个文件中,你会发现一个“变种默认值”。将“注册表”url属性从“https”替换为“http”。

是的,我知道。这不应该这样做,但至少帮助我绕过连接错误。

希望有帮助!

+0

我已经赞成你的答案,因为它帮助我最初解决了问题。坐在企业防火墙后面,有时命令行上的SSl会被击中并错过。经过一些研究(以及一些猜测)后,我找到了一个更好的方法,我已经在下面发布了。 –

+0

@StephenSimpson太棒了!谢谢!! –

9

您可以更改Bower在.bowerrc file中使用的注册表。默认注册表是:https://bower.herokuapp.com,并在node_modules/bower-config/lib/util/default.js中定义(如Jean Manuel Arias在他的回答中所述)。

要覆盖您的项目,请在.bowerrc中为注册表设置添加一个值。示例文件可能是:

{ 
    "directory": "<YOUR LIBRARY INSTALL DIRECTORY>", 
    "registry":"http://bower.herokuapp.com" 
} 

在上面的示例中,默认的https注册表正在被http版本覆盖。完整的可用.bowerrc设置列表可在Bower Spec找到。

您可以通过创建%USERPROFILE%\。bowerrc文件(对于Windows,在Linux中为〜/ .bowerrc)为当前用户执行全局覆盖。在将设置应用于NPM时,Bower遵循类似的搜索路径(请参阅npmrc settings)。这可能是一条更好的途径,因为它避免了使用本地设置混淆项目。