nuget - 如何从 HTTP URI(本地托管在 IIS 上)安装包?

标签 nuget chocolatey

我创建了一个可以在本地安装的包:

cinst <packageName> -source "C:\Host\<packageName>"

但是,当我将此包放在由 IIS 从虚拟目录通过 http 提供服务的文件服务器上时,它失败了。
cinst <packageName> -source "http://server/packages/<packageName>"

目标机器可以在浏览器中浏览到包目录,因此它可以看到服务器、文件夹并具有列表和读取权限。

错误
[ERROR] - install not installed. The package was not found with the source(s) listed.

Fiddler 显示请求:
http://server/packages/<packageName>
GET /packages/<packageName>
301 redirect to http://server:port/packages/<packageName>
http://server:port/packages/<packageName>
200 with <packageName>.nuspec and .nupkg files in the response

然后
GET /packages/<packageName>/$metadata
404 File or directory not found

我的两个想法:
  • 这是阻止我的 Windows 安全措施
  • 我的包是否缺少一些元数据

  • 我曾经在 *nix 上管理包,而且我最近才开始在 Windows 环境中工作,所以请随意说明任何明显的事情!

    环境:
    Information.PlatformVersion='6.1.7601.65536'|
    Information.PlatformName='Windows 7'|
    Information.ChocolateyVersion='0.9.9.11'|  
    

    带有 -debug 集的巧克力日志中没有额外的指针
    不使用 IDE 或 Repo,一切都很简单。

    泰!

    最佳答案

    不幸的是,NuGet(和代理 Chocolatey)不适用于裸 http。它现在需要 OData,但 future Chocolatey 团队计划允许仅使用 http 索引。

    以下资源解释了您的软件包托管选项:https://github.com/chocolatey/choco/wiki/How-To-Host-Feed

    关于nuget - 如何从 HTTP URI(本地托管在 IIS 上)安装包?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36288424/

    相关文章:

    asp.net-core - 在 ASP.NET Core 2.0 中配置 NLog,无需 nlog.config 文件

    visual-studio-2010 - 为什么 Visual Studio 中的不同项目的 ExecutionPolicy 行为会有所不同?

    c# - Xamarin.窗体 : "InitializeComponent" and "Package restore failed" Build Errors

    docker - 命令 'cmd/S/C choco install --no-progress -y curl'返回了非零代码:3221225785

    nuget - 将nuget包的文件和文件夹放在根文件夹中

    nuget - 如何在nuget中创建像Microsoft.AspNetCore.All这样的元包(所有包的包)?

    chocolatey - 如何使用 Chocolatey 从一台机器获取软件包列表并安装在另一台机器上?

    chocolatey - 使用 Chocolatey 和 packages.config 安装 Windows 功能

    chocolatey - 安装巧克力时的消息

    powershell - 在 Windows 上通过 Ansible 安装 Chocolatey 时出错