使用httpListener创建自定义网站,URL作为我的IP地址
本文关键字:我的 IP 地址 URL httpListener 创建 自定义 网站 使用 | 更新日期: 2023-09-27 18:25:43
我想创建一个以URL作为我的IP地址的网站[ex:192.X.X.X]
该网站会向任何访问我的URL的用户回复一条"你好"消息。
我使用以下代码来完成此操作![这只是一个没有线程的基本代码]
class listenToHTTP
{
HttpListener _listner;
public void start()
{
_listner = new HttpListener();
_listner.Prefixes.Add("http://localhost/");//default port 80
_listner.Start();
}
public void process()
{
while (true)
{
HttpListenerContext context = _listner.GetContext();
byte[] output = Encoding.ASCII.GetBytes("HELLO THERE");
context.Response.ContentEncoding = Encoding.ASCII;
context.Response.ContentLength64 = output.Length;
context.Response.OutputStream.Write(output, 0, output.Length);
}
}
}
问题是,我不知道任何人都可以访问的IP地址。
当我使用时,它完美地显示了"你好"的响应http://localhost/作为URL。
但是其他人会使用什么IP地址来访问我的简单网站。
我在浏览器中尝试了我的IP地址,但它不起作用
执行此操作时需要注意两件事;
-
如果您侦听localhost地址,则只有localhost能够连接到您的HttpListener。您需要添加一个带有
http://192.X.X.X/
的前缀(其中192.X.X.X当然是您的本地IP),然后收听。这可能(取决于您的操作系统)需要您以管理员身份运行,至少如果您想在端口<1024.您可以通过从本地机器而不是本地主机地址连接到您的IP#来测试这是否有效。 -
如果你运行的是Windows,防火墙可能会挡住你的去路。如果看起来是这样(即你可以从本地机器连接到你的IP#,但没有其他东西可以连接),你需要手动打开端口。谷歌上有很多关于如何做到这一点的指南。
@Joachim回复已经足够好了。我想补充一点。。。
- 您需要公开上述IP地址,以便其他人可以访问该URL
- 如果仅向您的域公开URL(即在Intranet的情况下),请与您的系统管理员联系以配置Intranet上的IP地址
- 本地主机设置的可访问性仅限于您的计算机
- 确保检查URL可访问性的防火墙约束以实现点1或2
有关更多信息,请查看HTTPListener的参考
- HTTPListener
- HTTPListener
- HTTPListener
问题是,我引用的private network
地址是local
到network
,并且该private network
之外的任何人都无法访问。。
这些是专用网络中使用的ip-address
的范围,因此具有此地址的系统不能是服务器或网站主机。。
10.0.0.0 to 10.255.255.255
172.16.0.0 to 172.31.255.255
192.168.0.0 to 192.168.255.255
你应该使用公共地址。。