2011-12-05 25 views
8

Ben kendi sitesinden örnek kullanarak çerçeveyi cherrypy sınamak çalışıyorum:Sorunları

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

cherrypy.quickstart(HelloWorld()) 

bunu çalıştırdığınızda ben konsolda şu cevabı alıyorum:

[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 

Yerel olarak tarayıcıyı çalıştırdığınızda ve localhost'a yönlendirildiğinde: 8080, serverip kullanırken dış dünyaya çalışır ancak 8080'i kullanmaz. Sunucunun ip adresini bir yere koymam gerekiyor mu?

cevap

11

Varsayılan olarak cherrypy.quickstart127.0.0.1 yerel sunucusuna bağlanarak hizmet sunucusundan ağa bağlı olan bilgisayarlardan erişilemez.
Siteye başka bir bilgisayardan erişmek isterseniz, here belgesinde belgelenen yapılandırmayı ayarlamanız gerekir.

Temel bir örnek olarak, tüm ağ arabirimlerine bağlanmak için yalnızca vaftiz değişiyor.

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

Teşekkür ederim, işe yaradı! –