iis 7 - una - Solicitud incorrecta-Nombre de host no válido IIS7
crear sitio web iis windows 10 (13)
¡No olvides enlazar a la dirección IPv6 también! Estaba intentando agregar un sitio en 127.0.0.1 utilizando localhost y obtuve el error de solicitud incorrecta / nombre de host no válido. Cuando hice ping en localhost, se resolvió a :: 1 ya que IPv6 estaba habilitado, así que tuve que agregar el enlace adicional para solucionar el problema.
Cuando intento acceder a mi aplicación web en el puerto 8080, aparece el siguiente error
Solicitud incorrecta (Nombre de host no valido
HTTP Error 400. El nombre de host de la solicitud no es válido.
Ni siquiera sé por dónde empezar a diagnosticar este problema.
¿Has comprobado que el enlace es IIS? (inetmgr.exe) Es posible que no esté registrado para aceptar todos los nombres de host en 8080.
Por ejemplo, si lo configura para mysite.com:8080 y lo pulsa en localhost: 8080, IIS obtendrá la solicitud pero no tendrá un enlace de nombre de host que coincida, por lo que se rechazará.
Aparte de eso, debe verificar los registros de IIS (C: / inetpub / logs / wmsvc #) en el servidor y ver si está viendo su solicitud. Entonces sabrá si es un problema en su cliente o en el propio servidor.
Compruebe la URL exacta que está proporcionando. Vi este error cuando omití el prefijo de ruta definido en ASP.NET, por lo que no sabía dónde enrutar la solicitud.
FWIW, si solo desea permitir las solicitudes dirigidas a cualquier nombre de host / ip, puede configurar su enlace de la siguiente manera:
<binding protocol="http" bindingInformation="*:80:*" />
Utilizo este enlace para poder cargar una máquina virtual con IE6 y luego depurar mi aplicación.
EDITAR: Mientras usa IIS Express para depurar, la ubicación predeterminada para el archivo de configuración de esta opción es
C:/Users/{User}/Documents/IISExpress/config/applicationhost.config
No estoy seguro de si este fue su problema, pero para cualquiera que intente acceder a su aplicación web desde su máquina y tiene este problema:
Asegúrese de que se está conectando a 127.0.0.1
(también conocido como localhost
) y no a su dirección IP externa.
Su URL debe ser algo como http://localhost:8181/
o http://127.0.0.1:8181
y no http://YourExternalIPaddress:8181/
.
La razón por la que esto funciona es porque su firewall puede bloquear su propia solicitud. Puede ser un cortafuegos en su sistema operativo y puede ser (el habitual) su enrutador.
Cuando te conectas a tu dirección IP externa, te conectas a ti desde Internet, como si fueras un extraño (o un hacker).
Sin embargo, cuando se conecta a su host local, se conecta localmente como a usted mismo y, obviamente, el bloqueo no es necesario (y se evita por completo).
Para Visual Studio 2017
y Visual Studio 2015
, la configuración de IIS Express
se almacena en el directorio oculto .vs
y la ruta es algo como esto .vs/config/applicationhost.config
, agregar enlace como a continuación funcionará
<bindings>
<binding protocol="http" bindingInformation="*:8802:localhost" />
<binding protocol="http" bindingInformation="*:8802:127.0.0.1" />
</bindings>
Puede utilizar la herramienta CMD de Visual Studio 2005/2008/2010. Ejecutalo como administrador y escribe
aspnet_regiis -i
Por fin puedo ejecutar mi aplicación con éxito.
Recibí este error cuando intenté llamar a un servicio web usando "localhost". Lo arreglé utilizando la IP real en su lugar (192.168 ...)
Verifique su archivo de hosts locales (C: / Windows / System32 / drivers / etc / hosts por ejemplo). En mi caso, lo había usado anteriormente para apuntar una URL a un cuadro de desarrollo y luego se me había olvidado. Cuando luego reutilizé la misma URL, seguí recibiendo una Solicitud incorrecta (nombre de host no válido) porque el tráfico iba al servidor incorrecto.
Vi el mismo error después de usar msdeploy para copiar la aplicación en un nuevo servidor. Resultó que los enlaces seguían usando la dirección IP del servidor anterior. Por lo tanto, vuelva a comprobar la dirección IP en los enlaces de IIS. (Parece obvio después del hecho, pero no se me ocurrió de inmediato verificarlo).
esto slove mi problema:
(Perdón por mi mal ingles)
1.) abra cmd un administrador y ejecute el comando (sin los corchetes): netsh http add urlacl url = http: // [ dirección ip ]: [puerto] / usuario = todos
2.) documents / iisexpress / config / applicationhost.config y en su carpeta de proyecto raíz en la carpeta (carpeta oculta) .vs / config / applicationhost.config necesita agregar una fila a la etiqueta "site":
3.) abra el "administrador de servicios de información de Internet (iis)", (si no lo encuentra: en serch in tasckbar escriba "Activar o desactivar las características de Windows") y abra el resulet y luego marque la casilla de verificación "Servicio de información de Internet" y su instalación ) en la pantalla izquierda, haga clic en nombre de la computadora -> Sitios -> Sitio web predeterminado y luego haga clic en el botón "Enlace" de la pantalla derecha, haga clic en el botón Agregar wirte lo que necesita y presione Aceptar.
4.) abra "Firewall de Windows con seguridad avanzada", en la pantalla izquierda presione "Reglas de entrada" y luego presione en la pantalla derecha "Nueva regla ..." verifique el puerto y presione Siguiente, verifique TCP y su puerto y presione Siguiente, marque " Permitir la conexión "y presione Siguiente, marque todas las casillas de verificación y presione Siguiente, escriba el nombre y presione Finalizar.
hecho.
This página de Microsoft describe cómo configurar el acceso a IIS Server Express desde otras computadoras en la red local.
En una palabra:
1) desde un símbolo del sistema con privilegios de administrador:
netsh http add urlacl url=http://[your ip address]:8181/ user=everyone
2) En el Firewall de Windows con seguridad avanzada, cree una nueva regla de entrada para el puerto 8181 para permitir conexiones externas
3) En applicationhost.config, en el nodo de su proyecto, agregue:
<binding protocol="http" bindingInformation="*:8181:[your ip address]" />
NO agregue (como se sugirió en otra respuesta):
<binding protocol="http" bindingInformation="*:8181:*" />
El enlace de comodín anterior interrumpió mi acceso desde http://192.168.1.6:8181/