Postman测试远程服务器程序接口提示Could not send request
解决方案
在服务器控制台的安全组中,为出方向和入方向设置程序对应端口号:
例如我的程序使用的端口是8080,就在安全组中添加协议端口为8080,ip0.0.0.0(默认对所有ip),这样便可以在远程进行测试和资源访问!
问题复现
在服务器端部署好Spring boot应用程序,并且在服务器本地进行测试接口,能够正常对程序进行请求,程序也会正常进行回应,但是使用外网设备进行服务器访问时出现无法发送请求的问题。再三检查请求地址和请求路径无误后,进行原因排查。
- 检查防火墙是否开启
Windows Server服务器系统默认关闭,但是我仍进行了检查,发现已经关闭,说明不是防火墙导致的无法访问
- 检查安全组策略
检查后发现,入方向开放了应用程序的端口8080,但是出方向没有开服,因此导致在外网设备上无法访问服务器资源。遂开放该端口,问题解决!
问题总结
在服务器出现本地可访问,远程不可访问的问题时,按如下顺序进行检查:
- 程序是否正在运行?
- 在服务器上程序运行的前提下,请求地址和路径是否有误?
- 在前两点均无误时,检查服务器控制台安全组策略设置是否开放程序对应端口。