如何使用CherryPy配置IP地址?
问题描述:
我正在使用python和CherryPy创建一个简单的内部网站,约2人使用。我使用CherryPy.quickstart内置的网络服务器,并且从不与配置文件混淆。我最近更改了机器,因此我安装了最新的Python和cherrypy,并且在运行该站点时,我可以从localhost:8080访问它,但不能通过IP或Windows计算机名称访问它。这可能是机器配置差异或CherryPy或Python的更新版本。任何想法如何我可以绑定到正确的IP地址?如何使用CherryPy配置IP地址?
编辑:要清楚,我目前还没有一个配置文件在所有。
答
这就要看你是如何运行CherryPy的初始化。
如果使用CherryPy的3.1语法,那尔德做到这一点:
cherrypy.server.socket_host = 'www.machinename.com'
cherrypy.engine.start()
cherrypy.engine.block()
当然,你可以有更多的东西花哨,像继承服务器类,或使用配置文件。这些用途涵盖在the documentation。
但这应该够了。如果不只是告诉我们你在做什么和樱桃版本,我会编辑这个答案。
答
server.socket_host: '0.0.0.0'
...也可以工作。这是IPv4 INADDR_ANY,这意味着“在所有接口上侦听”。
在配置文件中,语法是:
[global]
server.socket_host: '0.0.0.0'
在代码:
cherrypy.server.socket_host = '0.0.0.0'
答
import cherrypy
class HelloWorld(object):
def index(self):
return "Hello World!"
index.exposed = True
cherrypy.server.socket_host = '0.0.0.0' # put it here
cherrypy.quickstart(HelloWorld())
我只需要第一行我呼吁cherrypy.quickstart之前,由于 – 2008-09-22 16:32:35
链接在使用配置文件时破坏了 – 2016-09-02 14:28:22