Iis 无法从自托管nuget服务器下载包(404错误)

Iis 无法从自托管nuget服务器下载包(404错误),iis,http-status-code-404,nuget,Iis,Http Status Code 404,Nuget,如前所述,我安装了一个自托管Nuget服务器。 我正在使用Windows 2008 R2、IIS 7.5和Nuget 1.7 在VS中,我可以在package manager窗口中看到我的自托管软件包,但是当我尝试安装其中任何一个软件包时,我收到一个错误“远程服务器返回了一个错误:(404)找不到” 帮助任何人?请确保在IIS中将.nupkg扩展mime类型设置为application/zip 有关更多信息,请参见这些讨论:,我需要执行3个操作,以便最终实现此功能 1) 我的一些包的扩展名是“.

如前所述,我安装了一个自托管Nuget服务器。 我正在使用Windows 2008 R2、IIS 7.5和Nuget 1.7

在VS中,我可以在package manager窗口中看到我的自托管软件包,但是当我尝试安装其中任何一个软件包时,我收到一个错误“远程服务器返回了一个错误:(404)找不到”


帮助任何人?

请确保在IIS中将.nupkg扩展mime类型设置为application/zip


有关更多信息,请参见这些讨论:,

我需要执行3个操作,以便最终实现此功能

1) 我的一些包的扩展名是“.symbols.nupkg”,我发现Nuget服务器不能只为这些包提供服务。如果我将包文件的扩展名从“.symbols.nupkg”更改为“.nupkg”,则一切正常

2) 所有包裹必须平放在包裹文件夹下(无子文件夹)

3) “软件包”文件夹必须放在网站下方(原始位置很好,“~/packages”)。我试图将其放在绝对路径“C:\NugetPackages”中,但它不起作用。

假设您使用IIS:

  • 允许对存放nuget软件包的虚拟目录进行目录浏览
  • 将.nupkg扩展名的mime类型设置为application/x-msdownload 这会解决你的问题

  • 通过命令行或使用构建服务器(如TeamCity)构建软件包,您将如何进行?展开了一场讨论,并提出了一个问题。在本回答中的其他步骤之后,我发现将应用程序池从“经典”切换到“集成”“修复了meA延迟更新的问题:我们现在使用免费的ProGet()作为NuGet服务器。它有一个简单的设置和适合几乎所有我们的需要。