Docker部署后端SpringBoot项目和Nginx等应用,Nginx挂载前端项目,访问前端报错Network Error,Failed to load resource: net::ERR_SSL_PROTOCOL_ERROR,实际8080端口login接口可正常访问,请问是什么原因,该怎么排查

报错 “Network Error, Failed to load resource: net::ERR_SSL_PROTOCOL_ERROR” 通常是由于 SSL(安全套接层)协议出现问题导致的。以下是可能导致该错误的原因和排查方法:

  1. Nginx 配置问题:请确保 Nginx 的配置正确并且没有错误。特别要检查 SSL 配置,确保 SSL 证书和密钥的路径、权限等设置正确。

  2. SSL 配置问题:如果您在 Nginx 配置中启用了 SSL(https),请确保 SSL 配置正确并且 SSL 证书是有效的。检查 SSL 证书是否过期、是否正确绑定到正确的域名,以及证书是否被信任。

  3. 端口号问题:如果您的后端 Spring Boot 项目与 Nginx 的代理端口不一致,请确保 Nginx 配置中的代理端口与实际的后端 Spring Boot 项目端口一致。

  4. 防火墙和代理问题:检查防火墙和代理设置,确保它们不会干扰 HTTPS 请求。

  5. 日志和调试:请查看 Nginx 的错误日志,通常在 /var/log/nginx/ 目录下,以及 Spring Boot 后端项目的日志,查找任何与 SSL 相关的错误信息或异常。

  6. SSL 检查工具:尝试使用在线 SSL 检查工具(例如 SSL Labs)来检查您的 SSL 配置和证书是否正确,并查看是否存在任何警告或错误。

综上所述,请逐步排查 Nginx 配置、SSL 配置、端口号、防火墙和代理、日志和调试等相关问题,以确定造成 “Network Error, Failed to load resource: net::ERR_SSL_PROTOCOL_ERROR” 错误的原因。

希望上述内容能对您有所帮助。如果您有任何其他问题,请随时提问。