HttpListener未在主机外部侦听

本文关键字:外部 主机 HttpListener | 更新日期: 2023-09-27 18:28:28

我可以使用HttpListener来侦听来自同一台计算机的请求,但我还没有弄清楚如何让它侦听外部请求。

我的前缀是:"http://192.168.103.82:5000/"

我还尝试过:"http://*:5000/"

我可以在浏览器中键入我的本地网络IP并得到响应。然而,如果我在同一网络上的另一台计算机上做同样的事情,就没有这样的运气了。

我需要做一些额外的配置吗?这是操作系统特有的问题吗?我正在运行Windows 7 Home。

HttpListener未在主机外部侦听

您需要允许端口5000通过Windows防火墙。

来自命令:netsh http add urlacl

以下命令可用:

此上下文中的命令:add cacheparam-添加HTTP服务缓存参数add iplisten-将IP地址添加到IP侦听列表中。add sslcert-为IP添加SSL服务器证书绑定地址和端口。add timeout-将全局超时添加到服务add urlacl-添加一个URL保留条目。附言C: ''Users''dwalker>netsh http添加urlacl?

用法:add urlacl[url=][[user=][[listen=]yes|no[delegate=]yes| no]|[sddl=]]

参数:

Tag        Value
url      - The fully qualified URL
user     - The user or user-group name
listen   - One of the following values:
           yes: Allow the user to register URLs. This is the Default value.
           no: Deny the user from registering URLs
delegate - One of the following values:
           yes: Allow the user to delegate URLs
           no: Deny the user from delegating URLs. This is the default value.
sddl     - SDDL string that describes the DACL

备注:此命令为非管理员用户和账户可以使用NT帐户名指定DACL使用侦听和委派参数或通过使用SDDL字符串。

示例:

     add urlacl url=http://+:80/MyUri user=DOMAIN'user
     add urlacl url=http://www.contoso.com:80/MyUri user=DOMAIN'user listen=yes
     add urlacl url=http://www.contoso.com:80/MyUri user=DOMAIN'user delegate=no
     add urlacl url=http://+:80/MyUri sddl=...

示例:netsh http add urlacl user=Everyone url="http://192.168.103.82:5000/"