2017-02-07 22 views
0

目前我們有使用keystone + nunjucks創建的現有項目,並且所有到靜態文件的路徑看起來像/stc/img/someimage.jpg,所以我不想更改模板中的鏈接。是否有任何方法通過maxCDN節點服務器中的中間件來提供服務?是這樣的:從maxCDN服務節點應用程序中的靜態文件

app.use((req, res, next) => { 
    if (
    req.path.slice(-5) === '.jpeg' || 
    req.path.slice(-4) === '.jpg' || 
    req.path.slice(-4) === '.svg' || 
    req.path.slice(-4) === '.png' || 
    req.path.slice(-4) === '.gif' || 
    req.path.slice(-4) === '.css' || 
    req.path.slice(-3) === '.js' 
) { 
    req.path = `https://domain.cdn-ssl.com${req.path}`; 
    } 
    next(); 
}); 

回答

1

簡單的方法是重定向:

app.use((req, res, next) => { 
    if (
    req.path.slice(-5) === '.jpeg' || 
    req.path.slice(-4) === '.jpg' || 
    req.path.slice(-4) === '.svg' || 
    req.path.slice(-4) === '.png' || 
    req.path.slice(-4) === '.gif' || 
    req.path.slice(-4) === '.css' || 
    req.path.slice(-3) === '.js' 
) { 
    res.redirect(`https://domain.cdn-ssl.com${req.path}`); 
    } else { 
     next(); 
    } 
}); 

或者你可以使用中間件像express-http-proxy - https://www.npmjs.com/package/express-http-proxy