我使用express來爲我的網站提供靜態內容,並且我想要合併FontAwesome(npm install font-awesome
)。但是,在Font-Awesome的css中,字體文件的鏈接附加了一個查詢字符串,其中包含女巫表達不明白的版本信息。Express:如何以靜態內容的形式提供字體真棒?
有沒有人遇到過這個問題,並找到解決辦法?有沒有一種簡單的方法讓快遞忽略靜態內容的qs?
var express = require('express')
var app = express()
app.use('/static', express.static('./node_modules/font-awesome/css'))
app.use('/static', express.static('./node_modules/font-awesome/fonts'))
// response 200 | /static/font-awesome.min.css
// error 404 | /static/fontawesome--webfont.woff?v=4.6.3
更新 作爲@Denys塞居勒指出我們這不是QS,因爲我原本以爲。實際的請求是/fonts/fontawesome--webfont.woff?v=...
解決方案
app.use('/fonts', express.static('./node_modules/font-awesome/fonts'))
由於地圖吧,我見現在它正在尋找'''/fonts/fontawesome-webfont.ttf?v = ...'中的字體' – MatUtter
_「你永遠不應該這樣做。」_我不同意。如果你鎖定了一個特定的依賴關係,我認爲即使沒有選中'node_modules',我們也不會將它用作靜態路徑。 –
@PatrickRoberts即使您認爲您可以通過semver鎖定「安全地」完成此任務,但爲完整的節點模塊提供服務沒有任何意義。可以說最少的是它太過懶惰和骯髒。 –