多種方式解決spring boot swagger ui使用 nginx 部署後無法使用問題

多種方式解決spring boot swagger ui使用 nginx 部署後無法使用問題

 

 

spring boot 使用 swagger ui 做接口文檔,很是方便

本地測試都沒有問題

將一個Spring boot工程部署到生產環境, 配置nginx:

server {
    listen       80;
    server_name  quanke.name;

    location / {
        proxy_pass http://127.0.0.1:3101;
    }
}

瀏覽器中訪問: quanke.name, 選中某一接口點擊try it out,顯示:

No Content。

Request URL:

http://127.0.0.1:3101/test

而不是

http://quanke.name/test

通過朋友+搜索知道有兩種方法解決此問題:

第一種:修改nginx配置文件

server {
    listen       80;
    server_name  quanke.name;

    location / {
        proxy_pass http://127.0.0.1:3101;
    }
}

修改爲:

server {
    listen       80;
    server_name  quanke.name;
    
    location / {
        proxy_pass http://127.0.0.1:3101;
        proxy_set_header Host $host; # 指定host
    }
}

第二種:啓動工程時顯式添加屬性

Java 啓動的時候指定swagger.v2.host

-Dspringfox.documentation.swagger.v2.host=quanke.name

啓動命令實例:

java -jar -Dspringfox.documentation.swagger.v2.host=quanke.name /data/app/quanke/api.jar 

或者在配置文件(application.properties)中進行配置

 

轉自:https://www.jianshu.com/p/801851be8f3b

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章