簡體   English   中英

在 Express 中提供靜態文件不起作用

[英]Serving static files in Express dese not work

我的項目根目錄中有一個名為public的文件夾。 我想把我所有的圖像/css 放在里面。

現在,我想將服務靜態部分放在名為 config 的單獨模塊中:

//config.js

const express = require('express');  
module.exports = function (app) {
   app.use("/static", express.static(__dirname + '/public'));
}

然后在server.js

const express = require('express')
const app = express();

require('./startup/config')(app);

app.get('/', (req, res, next) => {
    res.send("Hi, How's it going ?")
})

app.listen(4500, () => {
    console.log("Server is running ...");
})

現在,當我想撥打以下地址時

http://localhost:4500/static/xxx.jpg

我收到以下錯誤

Cannot GET /static/xxx.jpg

項目結構:

-node_modules
-server.js
-public
-------xxx.jpg

您的config.js文件位於/startup目錄中。 __dirname是指當前文件所在的目錄。

所以你試圖從./startup/public而不是./public

您可以嘗試在config.js文件中使用process.cwd()而不是__dirname

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM