6

私は現在、ファビコンを機能させようとしている単純なexpress.jsの例を実行しています。ローカルではすべて正常に動作しますが、本番サーバーにアップロードすると、デフォルトのファビコンが表示されます。キャッシュをクリアしようとしましたが、運用サーバーの favicon が表示されないようです。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);
4

3 に答える 3

5

favicon ミドルウェアをインストールしてから、次のようにします。

var favicon = require('serve-favicon');

app.use(favicon(__dirname + '/public/images/favicon.ico'));

または、 path モジュールを使用して、次のようにします。

app.use(favicon(path.join(__dirname,'public','images','favicon.ico'));

(このソリューションは Express 3 アプリでも機能することに注意してください)

Express 4 で削除: app.configure()

app.configure()使用できなくなりました。詳細については、これを参照してください。

于 2014-06-23T05:39:49.320 に答える
3

ブラウザに表示されるまでに時間がかかることがあります。キャッシュを消去するか、別のブラウザを試して何度か更新してください。

于 2016-08-09T18:22:32.520 に答える
0

serve-favicon依存関係をnpmpathからインストールし、それに応じて index.js を更新します。

//import packages
var favicon = require('serve-favicon'), path = require("path");
//use favicon icon path to access in application.
app.use(favicon(path.join(__dirname+'/favicon.ico')));

ブラウザを更新してファビコンを反映させます。

于 2016-08-17T19:24:14.220 に答える