我目前正在运行一个简单的 express.js 示例,只是想让网站图标正常工作。在本地一切正常,但是当我将它上传到我的生产服务器时,它只显示默认的图标。我试过清除缓存,但生产服务器图标似乎不想显示。我在 Windows 2008 aws 服务器上的 iisnode 上运行所有内容。
有人知道问题出在哪里吗?
var express = require('express');
var app = express();
var port = process.env.PORT || 3000;
var bodyParser = require('body-parser');
//for favicon
var favicon = require('serve-favicon');
app.configure(function() {
app.use(express.favicon(__dirname + '/views/icons/favicon.ico'));
app.use(express.static(__dirname, 'views'));
});
app.listen(port);
console.log("full path is: " + (__dirname + '/views/icons/favicon.ico'));
console.log('The magic happens on port ' + port);
最佳答案
安装 favicon 中间件然后执行:
var favicon = require('serve-favicon');
app.use(favicon(__dirname + '/public/images/favicon.ico'));
或者更好,使用路径模块:
app.use(favicon(path.join(__dirname,'public','images','favicon.ico'));
(请注意,此解决方案也适用于 express 3 应用程序)
在 Express 4 中删除:app.configure()
app.configure()
不再可用。引用this了解更多信息。
关于javascript - express.js 图标未显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24357105/