Question

J'utilise python et CherryPy pour créer un site Web interne simple utilisé par environ 2 personnes. J'utilise le serveur Web intégré avec CherryPy.quickstart et je ne me suis jamais amusé avec les fichiers de configuration. J'ai récemment changé de machine, j'ai donc installé les dernières versions de Python et de Cherrypy. Lorsque je gère le site, je peux y accéder à partir de localhost: 8080, mais pas via l'IP ou le nom de l'ordinateur Windows. Cela peut être une différence de configuration de la machine ou une version plus récente de CherryPy ou Python. Des idées sur la façon dont je peux me connecter à la bonne adresse IP?

Éditer: pour que ce soit clair, je n'ai actuellement aucun fichier de configuration.

Était-ce utile?

La solution

Cela dépend de la manière dont vous exécutez cherrypy init.

Si vous utilisez la syntaxe Cherrypy 3.1, faites-le:

cherrypy.server.socket_host = 'www.machinename.com'
cherrypy.engine.start()
cherrypy.engine.block()

Bien sûr, vous pouvez avoir quelque chose de plus sophistiqué, comme sous-classer la classe de serveur ou utiliser des fichiers de configuration. Ces utilisations sont décrites dans la la documentation .

Mais cela devrait suffire. Sinon, dites-nous simplement ce que vous faites et la version cherrypy, et je modifierai cette réponse.

Autres conseils

server.socket_host: '0.0.0.0'

... fonctionnerait aussi. C'est IPv4 INADDR_ANY, ce qui signifie "écouter sur toutes les interfaces".

Dans un fichier de configuration, la syntaxe est la suivante:

[global]
server.socket_host: '0.0.0.0'

Dans le code:

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())
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top