前端https无法访问后端http服务器
阿里云服务器centos上使用nginx服务器
我在阿里云服务器centos上使用nginx服务器部署了前端,已经购买了域名,并通过DNS解析至前端服务器ip,并配置了SSL证书,但是后端没有配置(开了两个服务器,一个vue前端和springboot后端),所以出现了下面的情况,望各位帮帮忙,调了很久了
,都没有成功。

问题如上

nginx配置如上
我在阿里云服务器centos上使用nginx服务器部署了前端,已经购买了域名,并通过DNS解析至前端服务器ip,并配置了SSL证书,但是后端没有配置(开了两个服务器,一个vue前端和springboot后端),所以出现了下面的情况,望各位帮帮忙,调了很久了
,都没有成功。

问题如上

nginx配置如上
阿里嘎多学长整理AIGC生成,因移动端显示问题导致当前答案未能完全显示,请使用PC端查看更加详细的解答过程
你遇到的问题是前端使用 HTTPS 协议无法访问后端使用 HTTP 协议的服务器,这是因为浏览器的同源策略限制了跨协议的请求。
解决方案有以下几种:
http {
...
server {
listen 443 ssl;
server_name example.com;
location / {
proxy_pass http://backend:80;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
}
}
其中,proxy_pass 指令将请求转发到后端 HTTP 服务器 http://backend:80,proxy_set_header 指令将请求头信息传递给后端服务器。
使用 SSL/TLS 证书 你可以在后端服务器上安装 SSL/TLS 证书,使得后端服务器也支持 HTTPS 协议。这样,前端可以使用 HTTPS 协议访问后端服务器。
使用 WebSocket 如果你需要在前端和后端之间传输数据,可以使用 WebSocket 协议,它可以跨协议传输数据。
需要注意的是,这些解决方案都需要根据你的具体情况进行调整和配置。