阿里云服务器安全组设置

2023-11-06  本文已影响0人  李小二的倔强

一个解决了好几天的问题,讨厌加班的我,今天加班写的下面的文章!

背景:项目是一个前后端分离的项目,前端使用的是uniapp 后端是Java(spring boot),作者在服务器部署好后端之后,前端在本地运行调用服务器接口都没有问题,后来我把项目部署到跟后台同一个服务器之后调用不通。一直显示跨域。但是登录时候没有跨域,进入列表之后显示跨域,我项目有个过滤器,登录是跨过过滤器的。我当时就感觉我的过滤器有问题。但是别的项目用这个过滤器完全没毛病。但是由于服务器上层nginx转了两次(第一层外网nginx收到请求后转到内网nginx再进行请求转发),这个一直没有调试通,因为这个环境我们一直再用。我的nginx 跟后端代码应该是没有问题的。作者也有些许迷茫。。。

问题一直没有解决......(我一直怀疑是前端代码缺少设置,或者是nginx设置有问题),但是由于没有跟前端在一起,调试一直不是很方便所以问题一直没有解决。

后来搞了个阿里云的服务器,同样配置好之后。我把代码部署好之后都没有问题。由于是端口全部开放的所以被黑了,测试数据都没有了,这种情况在我意料之中。我设置了个默认的安全组,此时本地起的前端项目访问服务器依然没有任何问题。一部署前端就还是显示跨域,因为这个前后端都在同一台服务器,只有一层nginx,但是还是显示跨域。我后来怀疑我的跨域配置类没有生效我就一直改还是不行,同样我把过滤器注释掉还是不行,在这期间我自己把前端端口改了很多次,配置自己也在瞎改,改的前端项目再本地也不能运行了了,后来我找我同事给我调试好之后,部署到服务器还是不行。之后一直改前端调用的IP(阿里云服务器的公网IP、内网IP、127.0.0.1),我一直没有想明白前后端再同一台服务器中,前端设置成127.0.0.1调用不到后端接口,前端设置成内网IP也调用不到后端接口,我就只能用外网接口进行调用。后来我后台接口只开放了服务器的公网IP,还是不能用,依然是跨域(我是第一次感觉跨域这么难解决!!!),然后我就把防火墙关了。只测试阿里云安全组的设置,因为我另一台阿里云之前设置过没有问题。我就没有怀疑过是因为安全组的问题,经过我各种127.0.0.1、内网IP、外网IP的测试。我弄明白了,外网IP必须要全部开放,不然别人访问不了。后来我把过滤器加上也没有问题了。我把防火墙打开也没有问题了(开放了公网访问接口的端口)。能正常访问项目了。问题目前阶段解决了。。。

遗留问题:

1、一开始我的转了两层nginx服务器,显示跨域到底是nginx问题,还是我的我的过滤器问题,还是前端设置问题,因为这个服务器都没有开着防火墙所以不是防火墙问题。
2、为什么前后端再同一台阿里云服务器中,前端设置成127.0.0.1调用不到后端接口,前端设置成内网IP也调用不到后端接口,只能使用公网IP调用端口。
3、我的后端端口是开放的(阿里云安全组开放、防火墙开放),因为我之前只要开放数据库端口就被黑,心里没底。。。

数据被黑了还怎么解决呢?开放被黑,不开放只能通过公网调用,内网IP、127.0.0.1也调用不通......

第二天:

下班之前部署好好地,回到家里就不行了,第二天一看又是跨域!

emo了,这个问题时间太长了,就算服务器有问题一时半会儿也不知道具体哪里的问题,我妥协了,我把过滤器改成了个静态工具类,每次进方法之前调用一下。这样肯定没问题了吧!

上一篇下一篇

猜你喜欢

热点阅读