【Delphi】使用TIdHTTPServer开发HTTP服务端在Windows2008部署后,外网无法访问

【Delphi】使用TIdHTTPServer开发HTTP服务端在Windows2008部署后,外网无法访问

使用TIdHTTPServer设置绑定参数如下:

复制代码
IdHTTPServer1.Bindings.Clear;
IdHTTPServer1.DefaultPort:= 12022;
IdHTTPServer1.Bindings.Add.IP := '127.0.0.1';
IdHTTPServer1.Active := True;

使用上面的代码可以在Windows 2008 R2正常绑定端口并运行,但测试发现只能在本机使用http://127.0.0.1访问,外网使用域名或IP均返回拒绝访问或无法访问。

后面将IP改为'0.0.0.0'后,外网可以正常访问,如下:

复制代码
IdHTTPServer1.Bindings.Clear;
IdHTTPServer1.DefaultPort:= 12022;
IdHTTPServer1.Bindings.Add.IP := '0.0.0.0';
IdHTTPServer1.Active := True;

实际上,在普通情况下,我们是不应该设置bindings的,除非服务器有多网卡,而要求程序只监听其中一张网卡的数据,否则,仅设置DefaultPort即可,默认监听所有网卡数据。另外部分控件有BoundIP 也是同理的。

相关推荐
Dovis(誓平步青云)5 分钟前
《拆解Linux中的IP协议与数据链路层:地址、路由与分片的底层逻辑》
linux·网络·tcp/ip
专业开发者7 分钟前
施泰纳尔公司如何借助蓝牙 Mesh 网络节约能源成本,并将照明系统升级为智能物联网核心中枢
网络·物联网
代码游侠13 分钟前
复习——SQLite3 数据库
linux·服务器·数据库·笔记·网络协议·sqlite
chenyuhao20242 小时前
Linux网络编程:传输层协议UDP
linux·服务器·网络·后端·udp
米羊1216 小时前
fastjson (3修复)
网络·网络协议·安全
oMcLin10 小时前
Ubuntu 22.04 无法连接外部网络的故障排查与解决(解决 DNS 配置问题)
linux·网络·ubuntu
小李独爱秋12 小时前
计算机网络经典问题透视:常规密钥体制与公钥体制最主要的区别是什么?—— 一文带你从“钥匙”看懂现代密码学核心
服务器·网络·tcp/ip·计算机网络·密码学
千百元12 小时前
限制网段访问服务器端口63790
java·网络·mybatis
bst@微胖子13 小时前
Linux下排查网络偶现超时问题
linux·网络·dubbo
几道之旅13 小时前
websocket.WebSocketApp是全双工的吗?
网络·websocket·网络协议