前因
springboot在本地运行的时候,swagger-ui可以正常请求,当部署在测试服务器上之后,经过nginx转发当前项目,发现swagger-ui的baseurl变成为nginx 配置的upstream的name,影响了调试。
server {
listen 443;
server_name domain.com;
upstream api{
127.0.0.1:8081;
}
# 接口服务
location /api {
proxy_pass http://api;
}
}
方法一 修改nginx的配置
增加host配置,针对上面的配置调整为
server {
listen 443;
server_name domain.com;
upstream api{
127.0.0.1:8081;
}
# 接口服务
location /api {
proxy_pass http://api;
proxy_set_header Host $host; # 指定host
}
}
方法二 在配置文件显式添加属性
在application.properties配置文件中指定
springfox.documentation.swagger.v2.host=domain.com
或者 在application.yml配置文件中指定
springfox:
documentation:
swagger:
v2:
host: domain.com