Как настроить IP-адрес с CherryPy? - PullRequest
17 голосов
/ 22 сентября 2008

Я использую python и CherryPy для создания простого внутреннего веб-сайта, которым пользуются около 2 человек. Я использую встроенный веб-сервер с CherryPy.quickstart и никогда не путался с файлами конфигурации. Я недавно сменил машины, поэтому установил последние версии Python и cherrypy, и когда я запускаю сайт, я могу получить к нему доступ с localhost: 8080, но не через IP или имя машины Windows. Это может быть разница в конфигурации компьютера или более новая версия CherryPy или Python. Любые идеи, как я могу привязать к правильному IP-адресу?

Редактировать: чтобы было ясно, у меня сейчас нет файла конфигурации.

Ответы [ 3 ]

34 голосов
/ 30 сентября 2008
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'
17 голосов
/ 22 сентября 2008

Это зависит от того, как вы запускаете вишневый инициат.

Если использовать синтаксис cherrypy 3.1, то это сделает wold:

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

Конечно, у вас может быть что-то более необычное, например, создание подкласса класса сервера или использование файлов конфигурации. Эти виды использования описаны в документации .

Но этого должно быть достаточно. Если нет, просто скажите нам, что вы делаете и черри-версию, и я отредактирую этот ответ.

6 голосов
/ 28 декабря 2016
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())
...