springboot thymeleaf 配置nginx https跳转之后变成http
时间: 2023-07-22 07:38:45 浏览: 211
nginx配置https之后,https请求被调转到http问题
5星 · 资源好评率100%
如果您的Spring Boot应用程序配置了Thymeleaf,并且在使用Nginx进行HTTPS重定向时出现了问题,可能是由于Nginx的配置不正确导致的。您可以按照以下步骤进行排查:
1. 确保您的Nginx配置正确,应该包括以下内容:
```
server {
listen 80;
server_name example.com;
return 301 https://$server_name$request_uri;
}
server {
listen 443 ssl;
server_name example.com;
ssl_certificate /path/to/cert.pem;
ssl_certificate_key /path/to/key.pem;
...
}
```
2. 确认您的Spring Boot应用程序配置了正确的协议。如果您的应用程序配置为使用HTTP协议,则即使您的Nginx配置了HTTPS重定向,应用程序也会使用HTTP协议进行访问。您可以在application.properties文件中设置以下属性来配置协议:
```
server.port=8080
server.use-forward-headers=true
server.tomcat.protocol-header=X-Forwarded-Proto
```
3. 确认您的Thymeleaf模板中的链接使用了正确的协议。您可以在HTML标记中使用Thymeleaf表达式来设置链接的协议,例如:
```
<a th:href="@{'https://' + ${pageContext.request.serverName} + '/path/to/resource'}">
```
通过这些步骤,您应该能够解决Nginx HTTPS重定向后Thymeleaf链接变为HTTP的问题。
阅读全文