我使用 harp 作为 Express 中间件来呈现我的静态文件,我将其编写为 jam/coffee/stylus。一切正常,除非我浏览一个不存在的页面。我收到的不是通常的 404 页面,而是一个简单的“无法获取 /(页面名称)”。如果我使用“竖琴服务器”而不是使用节点来运行该站点,那么它自然可以正常工作。
我认为问题在于我必须从服务器内重定向 404 页面。但是,如果我这样做,Express 将无法识别翡翠格式。然后我必须安装翡翠并将其用作视图引擎。另外,如果我使用手写笔,我也必须添加该渲染。它违背了使用 harp 作为中间件的目的。
任何人都可以提出一个处理自定义 404.jade 文件的替代方案,就像在 harp 的独立版本中一样?
我的代码:
express = require "express"
harp = require "harp"
app = express()
app.use express.static __dirname + "/public"
.use harp.mount __dirname + "/public"
#the following does not work
.use (req,res) ->
res.status(404).render __dirname + "/public/404.jade"
.listen 3000