Configuré la nueva Galería NuGet en un servidor web (bajo IIS 7.0) donde trabajo. El sitio en sí está configurado y funciona bien. Podemos registrar cuentas, confirmar direcciones de correo electrónico e incluso subir un nuevo paquete a través del sitio mismo.¿Por qué mi Galería NuGet devuelve 500 de nuget push?
Nuestros scripts de compilación automatizados deben poder enviar a la galería los paquetes NuGet recién construidos. Cuando uso del comando push NuGet:
nuget.exe push build\nuget\BaconAndEggs.1.0.0.1.nupkg 1451002a-8c63-4174-b7ed-73dd3e7bcdf0 -Source http://somenearbyserver/
me sale el siguiente resultado:
Pushing BaconAndEggs 1.0.0.1 to 'http://somenearbyserver/'...
Failed to process request. 'Internal Server Error'.
The remote server returned an error: (500) Internal Server Error..
El sitio web es capaz de cargar un nuevo paquete muy bien, pero la línea de comandos no lo es. Si pruebo el comando push con fiddler en ejecución, observa dos solicitudes consecutivas mientras ejecuta el comando push. Uno parece estar tocando el sitio para asegurarse de que está allí, mientras que el segundo es el comando de empuje real.
Request 1: GET http://somenearbyserver/ 200 OK
Request 2: PUT http://somenearbyserver/api/v2/package/ 500 Internal Server Error
El contenido de la solicitud PUT es correcto, contiene la clave API y la carga útil. Al buscar en el servidor web, no hay errores en el visor de eventos y elmah no detecta nada.
Fiddler muestra esto como la respuesta a la PUT:
HTTP/1.1 500 Internal Server Error
Content-Type: text/html
Server: Microsoft-IIS/7.0
X-Powered-By: ASP.NET
Date: Wed, 18 Jan 2012 20:21:08 GMT
Connection: close
Content-Length: 1208
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"/>
<title>500 - Internal server error.</title>
<style type="text/css">
<!--
body{margin:0;font-size:.7em;font-family:Verdana, Arial, Helvetica, sans-serif;background:#EEEEEE;}
fieldset{padding:0 15px 10px 15px;}
h1{font-size:2.4em;margin:0;color:#FFF;}
h2{font-size:1.7em;margin:0;color:#CC0000;}
h3{font-size:1.2em;margin:10px 0 0 0;color:#000000;}
#header{width:96%;margin:0 0 0 0;padding:6px 2% 6px 2%;font-family:"trebuchet MS", Verdana, sans-serif;color:#FFF;
background-color:#555555;}
#content{margin:0 0 0 2%;position:relative;}
.content-container{background:#FFF;width:96%;margin-top:8px;padding:10px;position:relative;}
-->
</style>
</head>
<body>
<div id="header"><h1>Server Error</h1></div>
<div id="content">
<div class="content-container"><fieldset>
<h2>500 - Internal server error.</h2>
<h3>There is a problem with the resource you are looking for, and it cannot be displayed.</h3>
</fieldset></div>
</div>
</body>
</html>
estoy usando NuGet Version: 1.6.21205.9031
desde la línea de comandos.
¿Cuál podría ser el problema?
EDITAR: Después de habilitar páginas de error detallados en la carpeta de API en el sitio, me sale esto con la respuesta 500 descrito anteriormente:
Server Error in Application "NUGET" Internet Information Services 7.0 Error Summary HTTP Error 500.0 - Internal Server Error The page cannot be displayed because an internal server error has occurred. Detailed Error Information Module = LiveStreamingHandler Notification = MapRequestHandler Handler = WebDAV Error Code = 0x80070585 Requested URL = http://somenearbyserver:80/api/v2/package/ Physical Path = M:\path\to\nuget-gallery\api\v2\package\ Logon Method = Anonymous Logon User = Anonymous
Hay también otros textos de ayuda incluido, sugerencias basadas en permisos que verifican y tal, pero hasta donde puedo decir, no hay nada de malo con los permisos.
+1. Tenga en cuenta que el nombre del grupo es 'IIS_IUSRS' (con un' i' extra). – Cameron
no hay "permisos de edición" al hacer clic con el botón derecho en un sitio –