Cuando intento iniciar un sitio en IIS, dice:
el proceso no puede acceder al archivo porque lo utilizó otro proceso
Busqué en Google y encontré que otro sitio puede haber estado usando el puerto 80, pero en MyIIS veo que solo este sitio usa el puerto 80. ¿Qué más podría estar usando el puerto 80 o hay otro problema involucrado?
IIS-W3SVC
yHttpEvent
fuente. Texto del segundo registro de eventos -Unable to bind to the underlying transport for [::]:8080. The IP Listen-Only list may contain a reference to an interface which may not exist on this machine. The data field contains the error number.
. El puerto 8080 estaba siendo utilizado por un servicio de Oracle. Cambié el puerto utilizado por mi sitio web a 8081.Respuestas:
Verifique usando
netstat -aon
onetstat -aon | findstr 0.0:80
en un símbolo del sistema para ver qué ID de proceso está ESCUCHANDO en el puerto: 80 y luego busque ese ID de proceso (PID) en el Administrador de tareas con vista-> seleccionar columnas-> ID de proceso marcado. Finalice ese proceso, reinicie IIS y listo. ( Nota: si tiene Skype instalado, intente salir de ese proceso primero ) .En un Administrador de tareas moderno, debe ir a la pestaña Detalles para buscar el PID. O, como lo menciona @Nikita G en los comentarios, puede usar este comando para encontrar la tarea desde su símbolo del sistema:
Nota: cambie
123
con el PID devuelto desde el primer comando.fuente
netstat -aon | findstr 0.0:80
. Y a continuación, suponiendo que los rendimientos PID 123, ejecute el siguiente para ver qué proceso es éste:tasklist /FI "PID eq 123"
.OracleServiceXE
servicio que se había comido el puerto 8080 al que el nuevo sitio web de mi servidor IIIS intentaba vincularse.Está sucediendo porque un proceso diferente está usando el puerto 80, puede ser una aplicación de chat en su PC como Skype.
Primero, cambie el puerto del sitio web predeterminado que era 80 a algún puerto no utilizado (por ejemplo, 8087). Para lograr esto, haga clic derecho en la aplicación y luego haga clic en 'Editar enlace'.
Después de este cambio de puerto, reinicie nuevamente. Ahora puede identificar qué proceso está bloqueando el puerto IIS 80. Para verificar esto, use el comando netstat que muestra los detalles del puerto junto con el ID del proceso.
fuente
Sal de Skype y vuelve a intentarlo. He experimentado el mismo problema y simplemente me desconecté de Skype y luego reinicié mi IIS. Funcionó para mí.
fuente
También puede ejecutar este comando para averiguar qué aplicación o servicio está usando el puerto y luego rastrearlo en el Administrador de tareas (siempre que no sea el Servicio de agente de implementación web).
netstat -o -n -a | findtr 0.0: 80
Luego 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 el ID de proceso del comando netstat con el PID en el administrador de tareas y encontrará el servicio o la aplicación que está utilizando el puerto.
fuente
tasklist /FI "PID eq <PID from netstat (without brackets)>"
.Como han dicho otros, algo más puede estar usando el puerto 80 o 443. Para mí, era VMWare Workstation Server, pero verifique otras respuestas sobre cómo usar netstat.
fuente
netstat
para verificar el puerto 80 y no apareció nada. Luego mencionaste el puerto 443 y ahí estaba.Creo que este enlace ofrece una explicación bastante buena y una solución a este problema. http://support.microsoft.com/KB/890015
La mayor parte del tiempo; es causado por una de las dos razones: 1) el puerto 80 está siendo usado por otra cosa y, como lo sugirieron otros, puede usar netstat -o -n -a | findtr 0.0: 80 para ver si este es el caso. Si es así, elimine el proceso desde el administrador de tareas (marque mostrar procesos de todos los usuarios)
2) si no se usa el puerto 80, la segunda causa es potencialmente una dirección IP no válida en ListenOnlyList archivada en la clave de registro de HTTP-> Parámetros. Si sigue el enlace para configurar la clave manualmente o, de hecho, puede usar (xp y server 2003)
httpcfg delete iplisten -i ipaddress
para eliminar la dirección IP no válida. ¡Debe reiniciar http una vez que edite la dirección IP!fuente
En mi caso, fue el " Sync Share Service " (SyncShareSvc) el que se estaba ejecutando y usando el puerto 80. Sin embargo, netstat mostró 80 como libre. Podría hacer que el sitio se ejecute en otro puerto, pero no en el 80.Si agregué un nombre de host, IIS me permitiría iniciar el sitio, pero me solicitarían la autenticación implícita al navegar a localhost (o cualquier nombre de host que adicional). Solo se habilitaron Anonymous y Forms Auth en IIS ...
También descubrí que, después de detener IIS,
http://localhost
todavía me solicitaba la autenticación implícita.La solución, en mi caso, fue eliminar Servicios de archivo y almacenamiento> Archivos y servicios iSCSI> " Carpetas de trabajo " de los servicios instalados (es necesario reiniciar).
Después de eliminar el servicio "Carpetas de trabajo" y reiniciarlo, IIS funcionó como se esperaba.
fuente
Mi caso fue que después de instalar RD Web Access, no se pudieron iniciar los sitios web predeterminados originales. Se eliminó la función de acceso web de RD sigue siendo la misma. El enlace eliminado del puerto 443 resolvió el problema.
fuente
La mayoría de las veces, cuando esto sucede por parte de los desarrolladores web, es la razón por la que apache, ¡así que si va al archivo de configuración desde apache! ábrelo y busca con ctrl + f a 80 y cambia la ip que verás a 8080 y la oración debajo de 80 a 8080 y necesitas confirmar eso en tu xampp, o el programa que estás usando actualmente
Espero ayudarlos, chicos
fuente
Para obtener información más significativa, una forma es obtener también información de propiedad al emitir
netstat
para que conozca el proceso que utiliza 80 (enlace http predeterminado) o 443 (si se define el enlace https):En mi caso, el culpable fue vmware:
netstat se puede canalizar en find para buscar los puertos 80 o 443 (por ejemplo
find ":443"
), pero estas conexiones activas en particular se mostrarán al principio de la lista y son fáciles de ver.fuente