Ask A Question

View Question

When attempting to download a package, either from Visual Studio, NuGet.exe, or directly from the ProGet web interface, I am receiving a 500 Internal Server Error.

When clicking on the "download" button in the web interface (or using VS/nuget.exe) I noticed that the URL proget is sending the request to is:

http://<ProGet URL>/nuget/<Feed Name>/package/<Package>

This responds with a 500 error code.

When visiting the API Endpoint, everything looks healthy

http://<ProGet URL>/nuget/<Feed Name>/

<service xmlns="http://www.w3.org/2007/app">
<workspace>
<title xmlns="http://www.w3.org/2005/Atom">Default</title>
<collection href="Packages">
<title xmlns="http://www.w3.org/2005/Atom">Packages</title>
</collection>
</workspace>
</service>

Note the collection tag is labeled "Packages" and not "Package".

I can visit the following URL and be presented with the XML listing all of the packages in the feed.
http://<ProGet URL>/nuget/<Feed Name>/Packages

But recall that the URL on the download button, as well as the URL Visual Studio and NuGet.exe are asking for is

http://<ProGet URL>/nuget/<Feed Name>/package/<Package>

Upon looking at the headers while executing nuget.exe I noticed that it was indeed finding the package using the ProGet API:

/nuget/<Feed Name>/Packages(Id='Package',Version='0.1.0')

However the next request (to actually get the .nupkg) is

/nuget/Mission-Application/package/<Package>/<Version>

My guess is I have something configured incorrectly, but I've combed through every setting available.

I'm running ProGet 4.8.4 on Windows Server 2012 using an external SQL DB and Integrated Web Server.

Product: ProGet
Version: 4.8.4

The API can be a bit weird, but all looks fine to me.

The 500 error will be logged in Admin > Error Logs; with that information, we might be able to identify the error.

Alana,

Thanks for the response! Unfortunately no error is being logged in the recent errors. I switched from using IIS to Integrated Web Server and now instead of a 500 error I get "Cannot find the package in the package store."

I will dig around in the Windows Event Viewer and see if I can find anything.

After playing around I have noticed that when switching to internal storage, packages may be downloaded without error. Our desire is to keep things backed up on S3, however when I use S3 as the backing store, proget produces the error.

When you change a package store, the packages contained within the old store are not removed; so, this error is expected.

You can create a new feed, then migrate packages from one feed to another.

I have created a new feed configured to use S3 as the backing store, pushed packages to it, and still receive the 500 error.

Upon inspection, for this new feed has a disk path "C:\ProgramData\ProGet\Packages.nugetv2\F4" and the folder does F4 does not exist (as expected).

In this case, it sounds like the permissions for AWS must not be correct...the user must have full control/read/write access to bucket you specify.

Answer Question