[英]express-generator sample returning Not Found error
我按照本指南在共享主機上設置示例 express 應用程序。
超級簡單的“Hello World”示例工作得很好:
var express = require('express');
var app = express();
app.get('/express-hw/hello.txt', function(req, res){
res.send('Hello World');
});
var server = app.listen(61245, function() {
console.log('Listening on port %d', server.address().port);
});
然后我開始使用express gameapi
設置一個示例應用程序,該應用程序運行良好。 ( gameapi
是項目名稱)。 啟動應用程序也可以。
(編輯)根據要求,即正在生成的 app.js。
但是,在任何請求下,控制台都會報告 404 錯誤:
GET /gameapi/public/images/test.jpg 40438.042 ms - 1282
並且瀏覽器窗口中的輸出如下:
Not Found
404
Error: Not Found
at app.use.res.render.message (/var/www/virtual/ngmir/html/nodejs/gameapi/app.js:30:15)
at Layer.handle [as handle_request] (/var/www/virtual/ngmir/html/nodejs/gameapi/node_modules/express/lib/router/layer.js:76:5)
at trim_prefix (/var/www/virtual/ngmir/html/nodejs/gameapi/node_modules/express/lib/router/index.js:270:13)
at /var/www/virtual/ngmir/html/nodejs/gameapi/node_modules/express/lib/router/index.js:237:9
at Function.proto.process_params (/var/www/virtual/ngmir/html/nodejs/gameapi/node_modules/express/lib/router/index.js:312:12)
at /var/www/virtual/ngmir/html/nodejs/gameapi/node_modules/express/lib/router/index.js:228:12
at Function.match_layer (/var/www/virtual/ngmir/html/nodejs/gameapi/node_modules/express/lib/router/index.js:295:3)
at next (/var/www/virtual/ngmir/html/nodejs/gameapi/node_modules/express/lib/router/index.js:189:10)
at /var/www/virtual/ngmir/html/nodejs/gameapi/node_modules/express/lib/router/index.js:191:16
at Function.match_layer (/var/www/virtual/ngmir/html/nodejs/gameapi/node_modules/express/lib/router/index.js:295:3)
我認為這是一個服務器設置問題,因為代碼應該“開箱即用”。 但我幾乎從那里迷路了。 任何人都可以給我任何關於調查什么的提示嗎?
提前非常感謝。
如果您使用的是 Microsoft 的 Onedrive,並且它沒有同步您的項目文件,那么它將無法按預期工作。 就我而言,這就是發生的事情。
快速解決:嘗試將您的項目文件復制到 c:/user/Document(在您的用戶名下)由於此文件夾不會上傳或同步到您的 Onedrive,這應該可以工作。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.