2011-02-01 28 views

Respuesta

91

Creo que puedes.

Para ello, tiene que editar applicationhost.config archivo manualmente (edición bindingInformation '<ip-address>:<port>:<host-name>')

Para iniciar iisexpress, que necesita privilegios de administrador

+2

eso fue todo. Copiado el applicationhost.config y modificó la unión a jdiaz

+1

¿Sabe usted si usted puede configurarlo para que escuche "Cualquier IP"? – Alxandr

+3

Tengo el mismo problema. Cambié la información de enlace según su sugerencia y reinicié el iis express. Cuando inicié mis proyectos web desde Visual Studio, sigue yendo a http: // localhost: yyyy./xxxx. ¿Algunas ideas? –

79

A fin de que la respuesta de IIS Express en cualquier dirección IP, acaba de salir la dirección en blanco, es decir:

bindingInformation=":8080:" 

No olvide reiniciar IIS express antes de que los cambios puedan tener lugar.

+25

IIS Express debe ejecutarse como administrador para enlazar a cualquier cosa que no sea 'localhost'. Si se inicia desde 'VS 2010', ejecute' VS 2010' como Administrador. –

+1

Intenté hacer esto, pero cuando voy a http://192.168.1.10:55870/ me redirige automáticamente a http: // localhost/ – merk

+4

Nota para mí: si obtienes acceso denegado, ** ejecuta Visual Studio como administrador **. – nVentimiglia

7

Cambio bindingInformation=":8080:"

Y recuerde apagar el firewall para IISExpress

10

A continuación se presentan los cambios completos que necesitaba para hacer correr mi x64 bits IIS aplicación utilizando IIS Express, de modo que era accesible a una host remoto:

iisexpress /config:"C:\Users\test-user\Documents\IISExpress\config\applicationhost.config" /site:MyWebSite 
Starting IIS Express ... 
Successfully registered URL "http://192.168.2.133:8080/" for site "MyWebSite" application "/" 
Registration completed for site "MyWebSite" 
IIS Express is running. 
Enter 'Q' to stop IIS Express 

El archivo de configuración (applicationhost.config) tenía una sección añadido como sigue:

<sites> 
    <site name="MyWebsite" id="2"> 
    <application path="/" applicationPool="Clr4IntegratedAppPool"> 
     <virtualDirectory path="/" physicalPath="C:\build\trunk\MyWebsite" /> 
    </application> 
    <bindings> 
     <binding protocol="http" bindingInformation=":8080:192.168.2.133" /> 
    </bindings> 
    </site> 

La versión de 64 bits del marco .NET se puede activar como sigue:

<globalModules> 
    <!-- 
     <add name="ManagedEngine" image="%windir%\Microsoft.NET\Framework\v2.0.50727\webengine.dll" preCondition="integratedMode,runtimeVersionv2.0,bitness32" /> 
     <add name="ManagedEngineV4.0_32bit" image="%windir%\Microsoft.NET\Framework\v4.0.30319\webengine4.dll" preCondition="integratedMode,runtimeVersionv4.0,bitness32" /> 
    -->    
    <add name="ManagedEngine64" image="%windir%\Microsoft.NET\Framework64\v4.0.30319\webengine4.dll" preCondition="integratedMode,runtimeVersionv4.0,bitness64" /> 
+0

Gran respuesta detallada. Desearía poder votar +50. Aprecio que tengas las rutas para applicationHost.config y todos los detalles. Gracias. – raddevus

19

Como se mencionó anteriormente, edite el host.config aplicación. Una forma fácil de encontrar esto es ejecutar su sitio en VS usando IIS Express. Haga clic derecho en el ícono de bandeja de sistema, muestre todas las aplicaciones. Elija su sitio, y luego haga clic en el enlace de configuración en la parte inferior para abrirlo.

Sugeriría agregar otra entrada de enlace, y dejar allí el localhost inicial. Este enlace adicional aparecerá en la bandeja de sistema de IIS Express como una aplicación separada debajo del sitio.

Para evitar tener que ejecutar VS como administrador (hay muchas buenas razones para no ejecutar como administrador), agregue una regla netsh de la siguiente manera (obviamente reemplazando la IP y el puerto con sus valores): necesitará un cmd de administrador. exe para esto, sólo necesita ser ejecutado una vez:

netsh http add urlacl url=http://192.168.1.121:51652/ user=\Everyone 

netsh puede añadir reglas como url = http://+:51652/ pero no pudo conseguir que esto lugar muy bien con IIS Express. Puede usar netsh http show urlacl para enumerar las reglas existentes, y se pueden eliminar con netsh http delete urlacl url=blah.

Más información: http://msdn.microsoft.com/en-us/library/ms733768.aspx

+2

Tnx por mencionar cómo encontrar el archivo de configuración –