我有以下dir安裝程序;express.js靜態不識別定義的'公共'文件夾
**app** **controllers** *index.server.controller.js* **models** **routes** *index.server.routes.js* **views** *index.ejs* **config** **env** *config.js* *express.js* **public** **css** **img** *logo.jpg* **js** *server.js* *package.json*
裏面express.js,我使用下面的加載靜態目錄;
//app.use(express.static(__dirname + '\\..\\public\\') - also attempted
app.use(express.static('./public'));
我然後服務index.ejs,其中包含以下片段;
<img src="img/logo.jpg" alt="Logo"/>
但是,這總是會導致圖像本身返回404。
C:\nodejs>node horizontal/server Localhost running on port 3000 GET/304 13.763 ms - - GET /img/logo.jpg 404 4.372 ms - 25
如上所見,我已經嘗試給予了嚴格的__dirname路徑(如我曾與建立路徑的意見辦,如下圖所示) - 和也試圖只是將公共/ IMG/logo.jpg爲了看到它得到服務。
視圖,因爲它的工作;
app.set('views', __dirname+'\\..\\\\app\\views\\'); app.set('view engine', 'ejs');
有沒有人有任何想法,爲什麼表達的是沒有看到公共文件夾或服務從它的靜態內容?
請注意,我的Dev env是Windows8.1。
您好 - 感謝您的建議,但不幸的是,仍然沒有骰子。 404仍然按照摩根歸還。 – Eoghan
是與應用程序文件夾相同的級別還是內部?因爲我的建議工作公衆需要在應用程序文件夾內,但從你上面的描述,對我來說,他們似乎在同一水平 –