CherryPy服务器名称标签

dan*_*els 7 cherrypy

运行CherryPy应用程序时,它会发送类似CherryPy/version的服务器名称标签.是否可以在不修改CherryPy的情况下从应用程序重命名/覆盖它,以便显示其他内容?

也许像MyAppName/version(CherryPy/version)之类的东西

Bax*_*ter 10

现在可以在配置文件/ dict中基于每个应用程序进行设置

[/]  
response.headers.server = "CherryPy Dev01"
Run Code Online (Sandbox Code Playgroud)


dan*_*els 5

实际上在他们的官方频道上询问IRC fumanchu给了我一个更干净的方法(使用最新的svn):

import cherrypy
from cherrypy import _cpwsgi_server 
class HelloWorld(object):
    def index(self):
        return "Hello World!"
    index.exposed = True

serverTag = "MyApp/%s (CherryPy/%s)" % ("1.2.3", cherrypy.__version__)
_cpwsgi_server.CPWSGIServer.environ['SERVER_SOFTWARE'] = serverTag
cherrypy.config.update({'tools.response_headers.on': True,
                        'tools.response_headers.headers': [('Server', serverTag)]})
cherrypy.quickstart(HelloWorld())
Run Code Online (Sandbox Code Playgroud)