添加Favicon

“favicon”是浏览器用于标签和书签的图标。这有助于区分你的网站,并给它一个独特的品牌。

一个常见的问题是如何将Favicon添加到烧瓶应用程序中。首先,当然,你需要一个图标。它应该是16×16像素,采用ICO文件格式。这不是要求,而是所有相关浏览器都支持的事实标准。将图标作为 favicon.ico .

现在,要让浏览器找到您的图标,正确的方法是在HTML中添加链接标记。例如:

<link rel="shortcut icon" href="{{ url_for('static', filename='favicon.ico') }}">

对于大多数浏览器来说,这就是您所需要的,但是一些真正的老浏览器不支持这个标准。旧的事实标准是在网站根目录下以这个名称提供这个文件。如果您的应用程序没有安装在域的根路径上,那么您要么需要配置Web服务器以在根路径上提供图标,要么如果您不能这样做,那么您就走运了。但是,如果您的应用程序是根目录,您可以简单地路由重定向::

app.add_url_rule('/favicon.ico',
                 redirect_to=url_for('static', filename='favicon.ico'))

如果要保存额外的重定向请求,还可以使用 send_from_directory() ::

import os
from flask import send_from_directory

@app.route('/favicon.ico')
def favicon():
    return send_from_directory(os.path.join(app.root_path, 'static'),
                               'favicon.ico', mimetype='image/vnd.microsoft.icon')

我们可以省略显式mimetype,它将被猜测,但我们也可以指定它以避免额外的猜测,因为它总是相同的。

以上内容将通过应用程序提供图标,如果可能,最好配置专用Web服务器来提供;请参阅Web服务器的文档。

另见

  • 这个 Favicon 维基百科文章