2016-12-27 26 views
1

開始我已經在生產中的應用從一年。它具有導入並稍後提供壓縮數據文件的功能。今天我用不同的數據測試了應用程序,其中文件名以點開頭。該應用程序成功接受,壓縮和保存該文件,但是當前端請求相同的文件時,該應用程序的後端給予404。即成靜電給404,當一個文件用點

我檢查到文件實際存在於請求的URL。當我用較小的短劃線替換主要點時,它可以工作。

這裏是我的應用程序代碼:

const app = require('express')(); 
const serveStatic = require('serve-static'); 
const path = require('path'); 

app.use(serveStatic(path.join(__dirname, 'public/data'))); 

我收到以下錯誤:

enter image description here

文件可在目的地:

enter image description here

沒有的所有文件領先的點工作。與領先的點的所有文件給404

請幫我解決這個問題。

回答

2

可以起到隱藏文件(那些以點開始)與serve-staticdotfiles選項設置爲'allow'(默認情況下它被設置爲'ignore')。

app.use(serveStatic(path.join(__dirname, 'public/data'), { 
    dotfiles: 'allow' 
})); 

參見:https://ewiggin.gitbooks.io/expressjs-middleware/content/serve-static.html

這是一個與express.static中間件相同:

app.use(express.static(path.join(__dirname, 'public/data'), { 
    dotfiles: 'allow' 
})); 

參見:https://expressjs.com/en/api.html

+0

它完美。謝謝! –