Express js prevent GET /favicon.ico
my preferred method is middleware
put this somewhere:
function ignoreFavicon(req, res, next) {
if (req.originalUrl.includes('favicon.ico')) {
res.status(204).end()
}
next();
}
then:
app.use(ignoreFavicon);
Browsers will by default try to request /favicon.ico
from the root of a hostname, in order to show an icon in the browser tab.
If you want to avoid this request returning a 404, you can either:
- Supply a
favicon.ico
file that is available at the root of your site. - Use a module such as serve-favicon to point requests to a specific file.
- Catch the
favicon.ico
request and send a204 No Content
status:
app.get('/favicon.ico', (req, res) => res.status(204));