01 Jun 2017
flask里面有这样一个router
@app.route('/<cat>') def cat(cat): sub_cats = CAT_DICT[cat] return render_template("base/categories_base.html", TOPIC_DICT=TOPIC_DICT, cat=cat, sub_cats=sub_cats)
于是导致每次访问favicon.ico这个资源的时候会报如下错误,虽然不影响访问,但是看日志的时候总觉得太烦。
[2017-06-01 09:20:32,340] ERROR in app: Exception on /favicon.ico [GET] Traceback (most recent call last): File "/vagrant/mk2html/venv/lib/python2.7/site-packages/flask/app.py", line 1988, in wsgi_app response = self.full_dispatch_request() File "/vagrant/mk2html/venv/lib/python2.7/site-packages/flask/app.py", line 1641, in full_dispatch_request rv = self.handle_user_exception(e) File "/vagrant/mk2html/venv/lib/python2.7/site-packages/flask/app.py", line 1544, in handle_user_exception reraise(exc_type, exc_value, tb) File "/vagrant/mk2html/venv/lib/python2.7/site-packages/flask/app.py", line 1639, in full_dispatch_request rv = self.dispatch_request() File "/vagrant/mk2html/venv/lib/python2.7/site-packages/flask/app.py", line 1625, in dispatch_request return self.view_functions[rule.endpoint](**req.view_args) File "/data/www/linux_manual/blog/__init__.py", line 48, in cat sub_cats = CAT_DICT[cat] KeyError: u'favicon.ico'
按照官方文档上的说明,增加如下代码解决
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='images/favicon.ico')