Caddy代理SpringBootFatjar應用上傳靜態(tài)資源-創(chuàng)新互聯

簡述

基于SpringBoot框架開發(fā)的WEB應用,其中包含了數據服務接口,管理端UI。在打包的時候采用All In One的方式打成一個fatjar或者war最終通過java -jar app.jar或者java -jar app.war的方式運行程序,程序內置Tomcat容器。

創(chuàng)新互聯從2013年成立,是專業(yè)互聯網技術服務公司,擁有項目成都做網站、成都網站建設網站策劃,項目實施與項目整合能力。我們以讓每一個夢想脫穎而出為使命,1280元汶上做網站,已為上家服務,為汶上各地企業(yè)和個人服務,聯系電話:18980820575

問題

應用中有用戶上傳的圖片,音頻等文件,這些文件存儲在本地磁盤 比如:D:\static目錄,通過圖片的相對地址與服務地址組成的url是無法訪問的資源的。

在Tomcat容器中部署應用的時候,app.war是會被自動解壓的,上傳的資源文件在webapp目錄下是可以正常訪問。

目前的方式是fatjar,所以就需要通過WEB服務器來進行反向代理解決該問題。

服務器

比較流行的WEB服務器例如Apache Nginx IIS Squid。文中選擇基于golang開發(fā)的服務器caddy

Caddy是一款清新脫俗的WEB服務器。

配置

Caddy的配置非常簡單而且文檔也非常簡潔清晰。

下面是解決文中問題的Caddy配置文件,Caddy配置文件默認名為Caddyfile

127.0.0.1:80 {
    gzip {
    }
    log D:\logs\access_server.log {
        rotate_size     10
        rotate_age      10
        rotate_keep     20
    }
    root  D:\static     
    proxy /  http://127.0.0.1:8081 {
        fail_timeout     30s
        max_fails        2
        max_conns        50
        keepalive        50
        except /media    
    }   
}

說明:

  • root 工作目錄以及靜態(tài)資源目錄
  • proxy 所有請求轉發(fā)到8081端口的服務上
  • proxy 下的 except /media 即就是上傳資源的訪問前綴,意思是排查掉該前綴的請求,不做轉發(fā),因此請求到上傳資源就直接在root配置的目錄下查找。

總結

  • Caddy作為新興的WEB服務器,在配置上相對的nginx apache簡化很多
  • Caddy基于HTTP/2的WEB服務器,自動支持HTPPS
  • Caddy也是插件化開發(fā),可以輕松定制開發(fā)
  • Caddy性能方面需要進一步提升以及接收更多實踐的考驗
  • 其它進一步實踐吧

創(chuàng)新互聯www.cdcxhl.cn,專業(yè)提供香港、美國云服務器,動態(tài)BGP最優(yōu)骨干路由自動選擇,持續(xù)穩(wěn)定高效的網絡助力業(yè)務部署。公司持有工信部辦法的idc、isp許可證, 機房獨有T級流量清洗系統(tǒng)配攻擊溯源,準確進行流量調度,確保服務器高可用性。佳節(jié)活動現已開啟,新人活動云服務器買多久送多久。

網站名稱:Caddy代理SpringBootFatjar應用上傳靜態(tài)資源-創(chuàng)新互聯
文章網址:http://muchs.cn/article26/hsgcg.html

成都網站建設公司_創(chuàng)新互聯,為您提供網站營銷、小程序開發(fā)、網頁設計公司、自適應網站、關鍵詞優(yōu)化微信小程序

廣告

聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯

成都網頁設計公司