www update tools packs net mvc4 mvc language instalar asp asp.net-mvc visual-studio-2010 http asp.net-mvc-3 iis-express

asp.net mvc - update - Usando el puerto 80 con IIS Express dentro de VS2010



instalar asp net mvc (4)

Tengo una aplicación que intento ejecutar en mi sistema de desarrollo bajo IIS Express de VS2010 para la que necesito usar el puerto 80, pero no puedo hacer que funcione. Busqué información sobre el puerto 80 reservado. http://learn.iis.net/page.aspx/1005/handling-url-binding-failures-in-iis-express/

Pero incluso después de hacerlo todavía recibo un error de vs2010 que dice "No se puede iniciar el servidor web IIS Express. El puerto ''80'' está en uso".

No sé qué más probar. Utilicé Process Hacker para rastrear el puerto 80 y parece que lo usa el System ejecuta en el proceso ID 4, que es el proceso Kernel y Sistema de NT. No sé si eso me impediría usar el puerto. Pensé que tal vez era el resultado de http.sys sosteniendo ese puerto para que nada más pudiera usarlo.

C:/Users/[MyUser]/Documents/IISExpress/config/applicationhost.config hacer que IIS Express se ejecutara en el puerto 80 modificando el enlace predeterminado del archivo C:/Users/[MyUser]/Documents/IISExpress/config/applicationhost.config , y aunque puedo iniciar IIS Express manualmente de esta manera, A continuación, VS obtiene un error porque ya existe una vinculación en ese puerto. Así que lo cambio de nuevo a 8080, creo el directorio virtual usando el botón dentro de VS2010 (que supongo que es lo mismo que ingresar un enlace de sitio) pero todavía obtengo un error cuando voy a depurar la aplicación. ¿Hay algo codificado en VS2010 que no permita que inicie IIS Express en el puerto 80?

ACTUALIZAR Y CORREGIR: Ok, entonces encontré algunas cosas más para verificar y resolví mi problema pero no completamente. Una publicación sugirió asegurarse de que no tenía instalados servicios de informes de SQL, ya que puede monitorear en el puerto 80, solía tenerlo instalado pero ya no y no era el problema que estaba encontrando. Sin embargo, me di cuenta de que tengo instalado WebDeploy. Se incluyó con el paquete VS2010 SP1 del instalador de plataforma web . Esto está bien ya que quiero las herramientas de cliente de WebDeploy, pero también instalé el agente en mi sistema que estaba monitoreando en el puerto 80. Fui a mi lista de servicios y detuve el Web Deploy Agent Service . Tan pronto como hice esto ahora puedo usar el puerto 80 para IIS Express desde VS2010.

Nuevo problema relacionado con la ejecución en el puerto 80 en IIS Express. Sin embargo, mi aplicación es una MVC3 y me encontré con un problema porque MVC3 no está capturando mi solicitud, por lo que no está disparando mis acciones de controlador ni nada de eso. , pero se puede acceder a un archivo de texto en la raíz de mi aplicación, así sé que es en mi sitio donde se está publicando IIS Express. ¿Alguien tiene problemas al ejecutar un MVC3 (no sé si es exclusivo de MVC3 o no) en IIS Express en el puerto 80?


¡MUCHAS GRACIAS por descubrir el servicio ''Web Deploy Agent''! Esto es algo que recién se activó ya que todo estaba funcionando perfectamente y hoy mismo instalé la versión actualizada de IIS Express, y me encontré con exactamente el mismo problema con el puerto 80. Así que ahora que apagué el agente de Web Deploy, mi sistema funciona correctamente de nuevo.

En cuanto a ASP.NET MVC3, me fue muy útil en el puerto 80 y en el puerto 443. Fue bastante difícil vincular ambos puertos para que IIS Express pudiera usarlos como un usuario normal (la mayoría de ellos desde el enlace que publicó anteriormente), y para instalar el certificado SSL que usamos. He creado manualmente todas las entradas en mi archivo applicationhost.config para que funcione, y la sección correspondiente de sitios está a continuación:

<sites> <site name="PHP: A Main" id="2144116512"> <application path="/"> <virtualDirectory path="/" physicalPath="C:/var/www/amain/www" /> <virtualDirectory path="/images" physicalPath="C:/var/www/images" /> </application> <application path="/admin"> <virtualDirectory path="/" physicalPath="C:/var/www/amain/www/admin" /> </application> <bindings> <binding protocol="http" bindingInformation="*:80:test.amainhobbies.com" /> <binding protocol="https" bindingInformation="*:443:test.amainhobbies.com" /> </bindings> </site> <siteDefaults> <logFile logFormat="W3C" directory="%IIS_USER_HOME%/Logs" /> <traceFailedRequestsLogging directory="%IIS_USER_HOME%/TraceLogFiles" enabled="true" maxLogFileSizeKB="1024" /> </siteDefaults> <applicationDefaults applicationPool="Clr4IntegratedAppPool" /> <virtualDirectoryDefaults allowSubDirConfig="true" /> </sites>

Tenga en cuenta que mi sitio es un sitio combinado de PHP y ASP.NET MVC3, ya que estamos en el proceso de volver a escribir todo para poder ejecutar ASP.NET MVC3, por lo que la mayoría del sitio sigue siendo PHP pero hay muchas cosas nuevas. ahora ejecuta ASP.NET MVC3, y esas cosas funcionan para mí.

¿Su IIS Express funciona correctamente con MVC3 fuera de Visual Studio, o simplemente no funciona el MVC3?


No tenía instalado el Agente de implementación web, pero me encontré con este problema. También puede solucionar esto ejecutando este comando para averiguar qué aplicación o servicio está utilizando el puerto y luego rastrearlo en el Administrador de tareas.

netstat -o -n -a | findstr 0.0: 80

A continuación, abra el Administrador de tareas, vaya a Procesos, haga clic en la casilla de verificación "Mostrar procesos para todos los usuarios" y luego haga clic en el menú Ver y vaya a las columnas, agregue la columna PID.

Haga coincidir la identificación del proceso del comando netstat con el PID en el administrador de tareas y encontrará el servicio o la aplicación que está usando el puerto.



en mi caso, resolví el problema deteniendo "SQL Server Reporting Services"

puedes encontrarlo en

panel de control -> servicios