Веб-приложение Python (CherryPy) развернуто локально, но не видно по интрасети
Я создал веб-приложение Python с помощью CherryPy и развернулось на своей локальной машине.
Когда я пытаюсь просмотреть его с другого компьютера в доме, ничего не возвращается.
Однако, если я создаю простой html файл и разворачиваю его с помощью:
$ python -m SimpleHTTPServer
Это видно по интрасети.
Я в тупике, почему мое приложение может работать локально, но не может быть доступно в интрасети, учитывая, что между этими машинами нет проблемы с подключением, и что я могу обслуживать другой контент на одном и том же порту.
Я не использовал файл конфигурации, я использую настройки CherryPy по умолчанию.
Ответы
Ответ 1
Настройки по умолчанию, скорее всего, привязаны к localhost, который не является общедоступным. Если вы хотите, чтобы CherryPy запускался в открытом интерфейсе, вам нужно направить его для этого. Из этой дискуссии я нашел:
cherrypy.config.update(
{'server.socket_host': '10.149.4.240' } ) # Pub IP
cherrypy.quickstart()
или
cherrypy.config.update(
{'server.socket_host': '0.0.0.0'} )
cherrypy.quickstart()
Для привязки ко всем интерфейсам.