Welcome to the Inedo Forums! Check out the Forums Guide for help getting started.

If you are experiencing any issues with the forum software, please visit the Contact Form on our website and let us know!

404 when trying to download a package



  • A certain package always fails downloading, while others succeed.
    The download fails either when using the "Download" button or when using nuget from within visual studio by clicking "restore packages".

    The error:

    Request handler not found (404)

    An unexpected error has occured while processing your request.

    Error Details:

    /api/v2/package/Default/EntireOne.Shared.Rules/2.0.11.0 does not map to any handlers. The URL may have been entered incorrectly or linked to from an old reference.

    I've made sure the app pool is running in classic mode after seeing this post: http://inedo.com/support/questions/1208, but the error happens anyway.

    Product: ProGet
    Version: 2.2.13



  • After some further investigation, it looks like any packages that have a name that ends with ".Rules" cannot be download. This is both strange and surprising. We're considering to use proget for our internal nuget needs and it will be impossible while this bug exists...



  • Oh how I love IIS security settings. I was able to repro this, and it only affects IIS-hosted installs.

    There is an IIS setting that can remove the .rules handler restriction... if you modify the web.config file in the ProGet web application install directory, change the section:

    <handlers>
      <add name="Wildcard32" path="*" verb="*" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll" resourceType="Unspecified" requireAccess="None" preCondition="classicMode,runtimeVersionv4.0,bitness32" />
      <add name="Wildcard64" path="*" verb="*" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_isapi.dll" resourceType="Unspecified" requireAccess="None" preCondition="classicMode,runtimeVersionv4.0,bitness64" />
    </handlers>
    

    To:

    <handlers>
      <remove name="rules-ISAPI-4.0_64bit" />
      <remove name="rules-ISAPI-4.0_32bit" />
      <add name="Wildcard32" path="*" verb="*" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll" resourceType="Unspecified" requireAccess="None" preCondition="classicMode,runtimeVersionv4.0,bitness32" />
      <add name="Wildcard64" path="*" verb="*" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_isapi.dll" resourceType="Unspecified" requireAccess="None" preCondition="classicMode,runtimeVersionv4.0,bitness64" />
    </handlers>
    

    You'll be able to download packages that end in .Rules. This is only a temporary fix though, apparently there are other extensions that can be blocked (like .Soap) as well that we'll have to account for.



  • Thanks Tod! Works like a charm.

    Perhaps a better approach would be to clear the handlers and add only the ones used by the application?

    In any case that pretty much solves it for us (until the next problematic suffix...)

    Thank you.


Log in to reply
 

Inedo Website HomeSupport HomeCode of ConductForums GuideDocumentation