diff --git a/settings.json.template b/settings.json.template
index 95ed8c6a6..66192e4b9 100644
--- a/settings.json.template
+++ b/settings.json.template
@@ -6,6 +6,10 @@
{
// Name your instance!
"title": "Etherpad Lite",
+
+ // favicon default name
+ // alternatively, set up a fully specified Url to your own favicon
+ "favicon": "favicon.ico",
//Ip and port which etherpad should bind at
"ip": "0.0.0.0",
diff --git a/src/node/hooks/express/specialpages.js b/src/node/hooks/express/specialpages.js
index 50d27700a..96bb324fc 100644
--- a/src/node/hooks/express/specialpages.js
+++ b/src/node/hooks/express/specialpages.js
@@ -24,8 +24,8 @@ exports.expressCreateServer = function (hook_name, args, cb) {
});
});
- //serve favicon.ico
- args.app.get('/favicon.ico', function(req, res)
+ //serve favicon.ico from all path levels
+ args.app.get( /\/favicon.ico$/, function(req, res)
{
var filePath = path.normalize(__dirname + "/../../../static/custom/favicon.ico");
res.sendfile(filePath, function(err)
diff --git a/src/node/utils/Settings.js b/src/node/utils/Settings.js
index 38c982875..aa93117aa 100644
--- a/src/node/utils/Settings.js
+++ b/src/node/utils/Settings.js
@@ -34,6 +34,11 @@ exports.root = path.normalize(path.join(npm.dir, ".."));
*/
exports.title = "Etherpad Lite";
+/**
+ * The app favicon fully specified url, visible e.g. in the browser window
+ */
+exports.favicon = "favicon.ico";
+
/**
* The IP ep-lite should listen to
*/
diff --git a/src/templates/index.html b/src/templates/index.html
index 58af9a5ea..23c3c7755 100644
--- a/src/templates/index.html
+++ b/src/templates/index.html
@@ -32,7 +32,7 @@
-
+