Como já foi perguntado algumas vezes, quero rodar algo na porta 80 do meu PC, mas descobri que o Windows 10 a abre por padrão.
De acordo com uma das respostas neste tópico:
Eu sou capaz de pará-lo temporariamente por net stop http /y
. No entanto, existem vários serviços do sistema que dependem dele:
The following services are dependent on the HTTP Service service.
Stopping the HTTP Service service will also stop these services.
Windows Remote Management (WS-Management)
SSDP Discovery
Print Spooler
BranchCache
Em primeiro lugar, a desativação de algum desses serviços causará grandes problemas?
Se eu simplesmente parar o serviço HTTP com o net stop
comando, ele reiniciará alguns segundos depois por si só e, geralmente BranchCache
e às vezes SSDP Discovery
, será reiniciado, o que provavelmente é o que está reativando o serviço HTTP.
Parece surpreendente que as pesquisas do Google não estejam aparecendo mais sobre isso - eu teria pensado que o Windows 10 rodando muitas coisas na porta 80 sem ser explicitamente solicitado é algo que as pessoas teriam notado e estariam reclamando!
Reeditado seriamente depois de fazer minha lição de casa nas dependências do serviço http. 8^P
Não deve haver nenhum problema em desabilitar QUALQUER desses serviços. O pior caso é que, se algo parar de funcionar, você poderá ligá-lo novamente.
Você provavelmente não quer que o Gerenciamento Remoto do Windows seja executado, a menos que de alguma forma você esteja no trabalho e seu pessoal de TI o exija. PERÍODO.
A impressão não funcionará sem o spooler de impressão que, por algum motivo, a Microsoft vinculou à impressão HTTP, embora eu nunca tenha conhecido alguém que o use.
O UPnP não funcionará sem o SSDP Discovery . Pessoalmente, não uso o UPnP, mas você pode. Por que ele precisa da porta 80 é outra questão...
Você pode ler sobre o BranchCache no google, mas duvido que precise . Eu também li que você pode recuperar muito espaço, mas você deve ler sobre isso e tomar essa decisão sozinho.
Se você desabilitar o serviço BranchCache, eu faria o seguinte primeiro. Na verdade, o seguinte pode desativar o serviço PARA VOCÊ. Não sei, não tentei.
O seguinte pressupõe que você execute o Powershell.exe como administrador:
Boa sorte. Espero que ajude.
A ideia a seguir não foi testada, mas pode fazer o que você está tentando alcançar:
Em vez de parar
http.sys
, que nem é um serviço do sistema, mas sim um driver, você pode, em vez disso, dizerhttp.sys
para vincular a uma porta específica, liberando a porta 80.Você poderia usar aqui o fato de que seu computador possui um endereço IPv4 e um endereço IPv6, ligando
http.sys
-se ao endereço IPv6 geral (::
) e, assim, liberando o endereço IPv4 geral local (127.0.0.1
).Para vincular
http.sys
ao endereço geral IPv6, execute o seguinte comando em um prompt de comando elevado:Como
localhost
vinculado ao endereço IPv6, na verdade::1
, você ainda pode acessar oshttp.sys
aplicativos e serviços viahttp://localhost
. Qualquer aplicativo instalado na porta 80 agora deve estar disponível emhttp://127.0.0.1
. Ou você pode até adicionar aoC:\Windows\System32\drivers\etc\hosts
arquivo a linha:Isso você terá
localhost
parahttp.sys
elocal
para sua aplicação IPv4.