Как включить внешний доступ к приложению Python fcgi? - PullRequest
0 голосов
/ 21 июля 2011

У меня есть простое веб-приложение, которое отображает простое hello world. Я могу получить доступ к приложению через веб-браузер (127.0.0.1:3000/test/hello), но не могу получить к нему доступ с помощью локального IP-адреса, на котором запущено приложение, или с помощью внешнего IP-адреса (я соответствующим образом перенаправил порт на маршрутизаторе ).

server.modules += ( "mod_fastcgi" )

server.document-root = "/Users/me/test"
server.port = 3000
server.bind = "127.0.0.1"

fastcgi.debug = 1

fastcgi.server = (
    "test" =>
    (
        "python-fcgi" =>
        (
         "socket" => "/tmp/fastcgi.python.socket",
         "bin-path" => "/Users/me/hello.py",
         "check-local" => "disable",
         "max-procs" => 1,
        )
    ))

Как получить доступ к веб-приложению с помощью внешнего IP-адреса?

Ответы [ 3 ]

1 голос
/ 21 июля 2011

Установите server.bind для IP-адреса локальной сети сервера, а не localhost 127.0.0.1. Также убедитесь, что порт 3000 не заблокирован между хостами в вашей сети.

Связываясь с localhost, вы привязываетесь к интерфейсу обратной связи вашей машины, что означает, что lighttpd вообще не прослушивает сеть.

В качестве альтернативы, чтобы принять запрос независимо от того, как он направлен на сервер, выполните привязку к 0.0.0.0, который включает все интерфейсы.

1 голос
/ 21 июля 2011

Не привязывать к определенному IP-адресу, привязывать к 0.0.0.0.Это позволит вам получить доступ к нему по 127.0.0.1, а также по любым внешним IP-адресам.

0 голосов
/ 21 июля 2011

Ваш сервер связывает / прослушивает интерфейс loopback . Измените server.bind линию, чтобы вместо этого связывать / прослушивать IP-адрес вашего компьютера.

...