NodeJS Express框架中处理404页面一个方式


Posted in NodeJs onMay 28, 2014

在用 Express 的时候,路由是我最困惑的事之一。知道用 app.get('*') 可以处理所有页面,但这样除了自定义的其他路由外,静态文件是被忽略的。最近在写一个小工具的时候,找到了一个解决方案:

var express = require('express'),
    router = require('./routes');
    var app = module.exports = express.createServer();
// Configuration
app.configure(function () {
    // ...
    // 别把顺序写反了
    app.use(express.static(__dirname + '/public')); 
    app.use(app.router);
});
// 其他 router ...
// 404
app.get('*', function(req, res){
    res.render('404.html', {
        title: 'No Found'
    })
});

把通配符放于最后处理。这样没有经过路由的所有页面默认由 404.html 来接管。

NodeJs 相关文章推荐
轻松创建nodejs服务器(1):一个简单nodejs服务器例子
Dec 18 NodeJs
Nodejs抓取html页面内容(推荐)
Aug 11 NodeJs
Nodejs进阶:基于express+multer的文件上传实例
Nov 21 NodeJs
详解nodejs 文本操作模块-fs模块(三)
Dec 22 NodeJs
nodejs服务搭建教程 nodejs访问本地站点文件
Apr 07 NodeJs
详解nodejs微信公众号开发——2.自动回复
Apr 10 NodeJs
深入浅析Nodejs的Http模块
Jun 20 NodeJs
ubuntu编译nodejs所需的软件并安装
Sep 12 NodeJs
Nodejs实现爬虫抓取数据实例解析
Jul 05 NodeJs
nodejs中函数的调用实例详解
Oct 31 NodeJs
纯异步nodejs文件夹(目录)复制功能
Sep 03 NodeJs
nodejs的安装使用与npm的介绍
Sep 11 NodeJs
跟我学Nodejs(三)--- Node.js模块
May 25 #NodeJs
跟我学Nodejs(二)--- Node.js事件模块
May 21 #NodeJs
跟我学Nodejs(一)--- Node.js简介及安装开发环境
May 20 #NodeJs
Nodejs使用mysql模块之获得更新和删除影响的行数的方法
Mar 18 #NodeJs
用nodejs实现PHP的print_r函数代码
Mar 14 #NodeJs
nodejs读取memcache示例分享
Jan 02 #NodeJs
利用NodeJS和PhantomJS抓取网站页面信息以及网站截图
Nov 18 #NodeJs
You might like
在PHP中养成7个面向对象的好习惯
2010/01/28 PHP
PHP抓取、分析国内视频网站的视频信息工具类
2014/04/02 PHP
ThinkPHP控制器里javascript代码不能执行的解决方法
2014/11/22 PHP
php处理静态页面:页面设置缓存时间实例
2017/06/22 PHP
关于PHP5.6+版本“No input file specified”问题的解决
2019/12/11 PHP
[原创]js与自动伸缩图片 自动缩小图片的多浏览器兼容的方法总结
2007/03/12 Javascript
用JavaScript显示随机图像或引用
2009/04/21 Javascript
JQuery 文本框使用小结
2010/05/22 Javascript
javascript:void(0)是什么意思示例介绍
2013/11/17 Javascript
escape函数解决js中ajax传递中文出现乱码问题
2014/10/30 Javascript
jquery搜索框效果实现方法
2015/01/16 Javascript
浅谈JavaScript事件的属性列表
2015/03/01 Javascript
JavaScript常用本地对象小结
2016/03/28 Javascript
javascript学习指南之回调问题
2016/04/23 Javascript
JS中关于事件处理函数名后面是否带括号的问题
2016/11/16 Javascript
详解vue-router和vue-cli以及组件之间的传值
2017/07/04 Javascript
Angular实现类似博客评论的递归显示及获取回复评论的数据
2017/11/06 Javascript
Vue组件中prop属性使用说明实例代码详解
2018/05/31 Javascript
JS实现移动端触屏拖拽功能
2018/07/31 Javascript
Vue 莹石摄像头直播视频实例代码
2018/08/31 Javascript
微信小程序实现菜单左右联动
2020/05/19 Javascript
Vue项目打包部署到apache服务器的方法步骤
2021/02/01 Vue.js
[01:28:24]NAVI vs VG Supermajor 败者组 BO3 第三场 6.5
2018/06/06 DOTA
Python 两个列表的差集、并集和交集实现代码
2016/09/21 Python
Python升级导致yum、pip报错的解决方法
2017/09/06 Python
python3+PyQt5实现自定义窗口部件Counters
2018/04/20 Python
python爬取网易云音乐评论
2018/11/16 Python
python实现银行管理系统
2019/10/25 Python
详解用Python进行时间序列预测的7种方法
2020/03/13 Python
法学个人求职信范文
2014/01/27 职场文书
法人委托书的范本格式
2014/09/11 职场文书
党的群众路线教育实践活动个人整改方案
2014/10/25 职场文书
2015年中学元旦晚会活动方案
2014/12/09 职场文书
2015年社区统计工作总结
2015/04/21 职场文书
财务人员入职担保书
2015/09/22 职场文书
预备党员的思想汇报,你真的会写吗?
2019/06/28 职场文书