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教程之异步I/O
Nov 21 NodeJs
详解Nodejs基于mongoose模块的增删改查的操作
Dec 21 NodeJs
nodejs读写json文件的简单方法(必看)
Mar 09 NodeJs
详解nodejs微信公众号开发——5.素材管理接口
Apr 11 NodeJs
nodejs个人博客开发第五步 分配数据
Apr 12 NodeJs
nodejs async异步常用函数总结(推荐)
Nov 17 NodeJs
通过nodejs 服务器读取HTML文件渲染到页面的方法
May 17 NodeJs
nodejs中express入门和基础知识点学习
Sep 13 NodeJs
Nodejs模块的调用操作实例分析
Dec 25 NodeJs
nodeJS进程管理器pm2的使用
Jan 09 NodeJs
nodejs中各种加密算法的实现详解
Jul 11 NodeJs
如何利用nodejs自动定时发送邮件提醒(超实用)
Dec 01 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
div li的多行多列 无刷新分页示例代码
2013/10/16 PHP
php警告Creating default object from empty value 问题的解决方法
2014/04/02 PHP
PHP实现模仿socket请求返回页面的方法
2014/11/04 PHP
php文件操作小结(删除指定文件/获取文件夹下的文件名/读取文件夹下图片名)
2016/05/09 PHP
提高 DHTML 页面性能
2006/12/25 Javascript
让JavaScript 轻松支持函数重载 (Part 1 - 设计)
2009/08/04 Javascript
再谈querySelector和querySelectorAll的区别与联系
2012/04/20 Javascript
如何使用jquery动态加载js,css文件实现代码
2013/04/03 Javascript
jQuery动画效果-slideUp slideDown上下滑动示例代码
2013/08/28 Javascript
js实现下拉框选择要显示图片的方法
2015/02/16 Javascript
jQuery仿淘宝网产品品牌隐藏与显示效果
2015/09/01 Javascript
Angular2使用Guard和Resolve进行验证和权限控制
2017/04/24 Javascript
jQuery Json数据格式排版高亮插件json-viewer.js使用方法详解
2017/06/12 jQuery
Vue Element使用icon图标教程详解(第三方)
2018/02/07 Javascript
jQuery.parseJSON()函数详解
2019/02/28 jQuery
独立部署小程序基于nodejs的服务器过程详解
2019/06/24 NodeJs
Vue事件修饰符native、self示例详解
2019/07/09 Javascript
JavaScript常用工具函数大全
2020/05/06 Javascript
[01:33]完美世界DOTA2联赛PWL S3 集锦第二期
2020/12/21 DOTA
Python获取Linux系统下的本机IP地址代码分享
2014/11/07 Python
Python json模块使用实例
2015/04/11 Python
Win10下Python环境搭建与配置教程
2016/11/18 Python
pyqt5自定义信号实例解析
2018/01/31 Python
Python continue继续循环用法总结
2018/06/10 Python
python中计算一个列表中连续相同的元素个数方法
2018/06/29 Python
python替换字符串中的子串图文步骤
2019/06/19 Python
Anaconda和ipython环境适配的实现
2020/04/22 Python
需要知道的CSS3动画技术
2010/01/01 HTML / CSS
鼠标滚轮事件和Mac触控板双指事件
2019/12/23 HTML / CSS
美国购买新书和二手书网站:Better World Books
2018/10/31 全球购物
工作中的自我评价如何写好
2013/10/28 职场文书
商场促销活动策划方案
2014/08/18 职场文书
最美家庭活动方案
2014/08/31 职场文书
Python import模块的缓存问题解决方案
2021/06/02 Python
利用 SQL Server 过滤索引提高查询语句的性能分析
2021/07/15 SQL Server
磁贴还没死, 微软Win11可修改注册表找回Win10开始菜单
2021/11/21 数码科技