Это не поддерживается CherryPy, но мы можем справиться сами!
Шаблон страницы ошибки жестко задан в _cperror.py
, и удаление номера версии из шаблона будет возможно только через пользовательскийстраница ошибки.Однако мы можем переопределить переменную, из которой читается номер версии:
cherrypy.__version__ = ''
Глядя на использование переменной, мы видим, что это повлияет как на страницы ошибок, так и на заголовок HTTP:
/usr/local/lib/python3.6/dist-packages/cherrypy$ grep cherrypy.__version__ *.py
_cperror.py: kwargs['version'] = cherrypy.__version__
_cprequest.py: 'Server': 'CherryPy/' + cherrypy.__version__,
В заголовке HTTP Server
все еще будет упоминаться CherryPy.Это можно переопределить, как указано Baxter , установив переменную конфигурации response.headers.server
:
cherrypy.config.update({
'response.headers.server': '',
})
На ваших страницах ошибок все равно будет отображаться сообщение «Powered by CherryPy», но по крайней мере нетбудет указан номер версии.
Обратите внимание, что оба фрагмента кода должны быть указаны перед запуском сервера (т. е. перед вызовом cherrypy.quickstart(...)
).