關於項目部署在Tomcat中使用軟連接之坑

關於項目部署在Tomcat中使用軟連接之坑

需求背景

有一個管理平臺,平臺需要進行上傳音頻文件,音頻文件上傳與下載都可以正常實現,但是出現一個這樣的問題,如果H5頁面獲取的音頻文件是以流的方式進行傳輸,無法進行快進,這樣會導致使用效果非常不友好,然後我試了一下H5頁面音頻地址直接指向文件所在項目內的地址,可以進行快進,這樣就解決了快進的問題,但是整個項目的前後端是進行分離的,上傳文件夾也是在項目之外,這種問題我們怎麼解決呢?

解決方式

項目的服務器的系統是Linux系統,所以我選擇軟連接的方式進行解決問題,首先將項目的WAR包放在tomcat下的webapp文件下,然後啓動Tomat,Tomcat會自動將WAR包進行解壓,解壓之後在被解壓的項目文件夾中合適的位置添加軟連接,軟連接指向的地址就是後臺上傳文件的地址,當我需要獲取音頻文件時,我只要獲取上傳目錄下的地址,然後進行拼湊地址,傳給前臺即可.例如http://項目名/軟連接地址/上傳目錄地址.
但是改好之後,通過URL的方式無法訪問到音頻文件,結果原因是因爲Tomcat默認無權訪問軟連接,需要進行配置纔可以正常訪問。

注意事項

需要配置的文件是tomcat目錄下conf文件夾下面的context.xml
需要改動此配置文件中的Context標籤
需要給Context標籤添加一個屬性allowLinking=“true”.這樣即可不過Tomcat版本的不同,添加屬性的方式也不同。

tomcat567版本是: <Context allowLinking="true" />
tomcat89版本是: <Context> <Resources allowLinking="true" /> </Context>

設置完重啓即可,效果完成。

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