1 Depois de editar o arquivo applicationhost.config (localizado na pasta IISExpress em seus documentos), as ligações do seu site devem ficar assim:
<bindings>
<binding protocol="http" bindingInformation="*:8080:*" />
</bindings>
As ligações consistem em três partes. Em primeiro lugar, um endereço IP ou lista ou, como neste caso, um curinga. Em segundo lugar, o número da porta e, em terceiro lugar, um nome de host, ou lista, ou curinga (para filtrar por Host
cabeçalho). Para fins de desenvolvimento, um curinga é mais adequado aqui, pois você provavelmente usará uma porta exclusiva.
2 Como você está usando vinculação não localhost, são necessárias permissões adicionais. Você pode executar o VS como administrador ou, de preferência, deve adicionar ACLs de URL para conceder as permissões necessárias. No exemplo abaixo, a permissão é dada a todos, mas você pode usar seu próprio nome de usuário.
Observação: o urlacl
deve corresponder exatamente à ligação. Portanto, um urlacl
for http://*:8080
permitirá uma ligação de *:8080:*
, mas não uma ligação de *:8080:localhost
, embora o último seja um subconjunto do primeiro. isso significa que se, em vez de usar um caractere curinga, você listar cabeçalhos de host applicationhost.config
, deverá adicionar uma correspondência urlacl
para cada um.
As etapas para configurar o HTTP.sys para tráfego externo são semelhantes à configuração de um site para usar uma porta reservada. No Windows 7 ou Windows Vista, em um prompt de comando elevado, execute o seguinte comando:
netsh http add urlacl url=http://*:8080/ user=DOMAIN\username
No Windows XP, execute o seguinte comando em um prompt de comando elevado:
httpcfg set urlacl /u http://*:8080/ /a D:(A;;GX;;;WD)
Nota 2 Se executar o VS como administrador ou adicionar entradas ACL não resolver o problema, execute o IIS Express na linha de comando e verifique se há alguma mensagem de falha de registro de ligação. Para iniciar a partir da linha de comando, dê este comando:
iisexpress.exe /site:"your-site-name"
3 Finalmente, você precisará de entradas de firewall adequadas. Para isso, é mais fácil usar o console "Firewall do Windows com Segurança Avançada".
Em "Regras de entrada", escolha "Nova regra ...".
- O tipo de regra é "Personalizado".
- Programa é Serviços-> Personalizar ...-> Aplicar apenas a serviços. (Embora o IIS Express não seja um serviço, o multiplexador HTTP que ele usa é).
- O protocolo é TCP
- Portas específicas: Liste todas as portas para todas as ligações do IIS Express. Você pode voltar a esta regra e adicionar portas a qualquer momento. (Se isso se tornar cansativo, você pode adicionar um intervalo
40000-65534
que cobre todo o intervalo usado pelo Visual Studio, mas esteja ciente de que isso é menos seguro).
- A ação é "Permitir a conexão"
- O perfil será um dos seguintes. Em caso de dúvida, escolha "Domínio + privado".
- "Domínio", se o seu for um desktop corporativo e só funcionará no domínio local
- "Domínio + Privado" Se a sua máquina for uma máquina de desenvolvimento privada em um ambiente não corporativo ou um laptop corporativo que também precisa funcionar em casa.
- “Domínio, Privado e Público”, se necessitar de fazer demonstrações em redes não privadas.
- O nome deve ser algo como "IIS Express Dev Server"