我正在尝试设置本地托管的NuGet服务器来托管软件包。我正在使用NuGet.Server,我按照此处的说明进行操作:http://docs.nuget.org/create/hosting-your-own-nuget-feeds#user-content-creating-remote-feeds。它们有效地归结为,"创建一个空的Web应用程序项目,安装Nuget.Server,然后运行/发布。"
当我通过Visual Studio运行应用程序时,我在推送新软件包时没有问题:
C:\dev>nuget push .\Test.0.1.nupkg -s http://localhost:50794/ simple
Pushing Test 0.1 to 'http://localhost:50794/'...
Your package was pushed.
但是,一旦我将其发布到我的本地IIS,我就会开始收到提示输入用户名和密码的信息:
C:\dev>nuget push .\Test.0.1.nupkg -s http://localhost/nuget simple
Pushing Test 0.1 to 'http://localhost/nuget'...
Please provide credentials for: http://localhost/nuget/
UserName:
我没有像应用程序前面的代理那样奇怪的事情;它只是作为我本地计算机上的IIS中的普通Web应用程序运行。在发布时,我使用一个简单的Web部署发布,将服务器指定为localhost,将站点名称指定为默认网站\ Nuget,以及目标URL(尽可能接近我只能在浏览器中成功打开该URL)本地主机/的NuGet。
服务器肯定正常运行:
我尝试过的事情没有变化:
我也找到this,但我对此感到困惑。我没有创建任何用户,当它说它向匿名用户授予角色时,我不知道它意味着什么。 (这可能只是我的经验不足。)据我所知,没有配置身份验证。
请注意,我已经看过this question。我考虑过这是否重复,但该帖中的细节是粗略的。在我看来,它可能是同样的问题,但我并不想对它做出足够的假设,开始尝试将这个细节水平编辑到问题中。我相信这会过多地改变帖子的含义;鉴于我想呈现的细节有所不同,我不相信这是重复的。
答案 0 :(得分:0)
检查您的应用程序池 - 它可能设置为使用NetworkIdentity而您希望它使用ApplicationIdentity吗?