Обеспечение доступности webpy фреймворка за пределами локальной сети

Я использую Ubuntu 12.04.03. У меня есть некоторый базовый опыт работы с webpy, и он работал для моей локальной сети, просто следуя инструкции. Фреймворк должен быть в состоянии использоваться извне локальной сети. Мне трудно понять, как сделать фреймворк доступным из-за пределов локальной сети. Я попытался открыть определенный порт с помощью

# iptables -A INPUT -p tcp -d 0/0 -s 0/0 --dport 8081 -j ACCEPT" then I check: "# netstat -ln | grep 8081 and I get:
tcp        0      0 0.0.0.0:8081            0.0.0.0:*               LISTEN

и использовать python web_py_test.py MY_IP:8081 безуспешно.

Если я вообще это понимаю, у нас может быть компьютер, подключенный к Wi-Fi с нестатическим IP-адресом, и есть способ запустить нашу веб-платформу, доступную из внешнего мира. Я экспериментирую со сценарием приветствия:

import web

urls = (
    '/(.*)', 'hello'
)
app = web.application(urls, globals())

class hello:
    def GET(self, name):
        if not name:
            name = 'World'
        return 'Hello, ' + name + '!'

if __name__ == "__main__":
    app.run()
~           

Я заметил, что в сценарии ничего не объявлено об IP-адресах или портах.

0
задан 30 May 2016 в 17:44

1 ответ

Взято из книги с официального сайта:

По умолчанию web2py запускает свой веб-сервер на 127.0.0.1:8000 (порт 8000 на localhost), но вы можете запустить его на любом доступном IP-адрес и порт. Вы можете запросить IP-адрес вашего сетевого интерфейса, открыв командную строку и введя ipconfig в Windows или ifconfig в OS X и Linux. Теперь мы предполагаем, что web2py работает на локальном хосте (127.0.0.1:8000). Используйте 0.0.0.0:80 для публичного запуска web2py на любом из ваших сетевых интерфейсов

Обратите внимание на . Используйте 0.0.0.0:80 для публичного запуска web2py на любом из ваших сетевых интерфейсов

Большинство этих сред имеют один и тот же метод для запуска своих серверов разработки локально / публично.

Возвращаясь к ответу, если вы не установили какой-либо файл конфигурации, вам необходимо запустить сервер разработки, используя:

python web2py.py --ip 0.0.0.0:80 # or any other port you want...

Справочник

0
ответ дан 30 May 2016 в 17:44

Другие вопросы по тегам:

Похожие вопросы: