2011-12-05 10 views
8

Estoy intentando probar cherrypy marco mediante el uso de ejemplo de su sitio:Problemas con el ejemplo del mundo hola funcionamiento de cherrypy

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

cherrypy.quickstart(HelloWorld()) 

Cuando lo ejecuto me da esta respuesta en la consola:

[05/Dec/2011:00:15:11] ENGINE Listening for SIGHUP. 
[05/Dec/2011:00:15:11] ENGINE Listening for SIGTERM. 
[05/Dec/2011:00:15:11] ENGINE Listening for SIGUSR1. 
[05/Dec/2011:00:15:11] ENGINE Bus STARTING 
CherryPy Checker: 
The Application mounted at '' has an empty config. 

[05/Dec/2011:00:15:11] ENGINE Started monitor thread '_TimeoutMonitor'. 
[05/Dec/2011:00:15:11] ENGINE Started monitor thread 'Autoreloader'. 
[05/Dec/2011:00:15:12] ENGINE Serving on 127.0.0.1:8080 
[05/Dec/2011:00:15:12] ENGINE Bus STARTED 

Cuando se ejecuta el navegador localmente y se apunta a localhost: 8080 funciona pero al mundo exterior cuando se usa serverip: 8080 no funciona. ¿Debo configurar la dirección IP del servidor en alguna parte?

Respuesta

11

De forma predeterminada, cherrypy.quickstart solo se vinculará a localhost 127.0.0.1, que se puede acceder desde la computadora de servicio pero no desde las computadoras conectadas a ella a través de la red.
Si desea poder acceder al sitio desde otra computadora, debe configurar la configuración, como se documenta en here.

Aquí hay un ejemplo básico, simplemente cambiando cherrypy para enlazar a todas las interfaces de red.

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

# bind to all IPv4 interfaces 
cherrypy.config.update({'server.socket_host': '0.0.0.0'}) 
cherrypy.quickstart(HelloWorld()) 
+0

¡Gracias, eso funcionó! –