【问题标题】:Unable to deploy webpy application无法部署 webpy 应用程序
【发布时间】:2015-10-28 16:24:16
【问题描述】:

我使用 webpy 创建了一个 Web 应用程序,并尝试按照 Here 的指示在 Apache 上使用 CGI 部署该应用程序。在本地机器上一切正常,但我无法用不同的计算机(在不同的网络上)打开网站,我怎样才能让公众访问它?是否需要任何特殊配置才能让互联网上的每个人都可以访问它?目前我按照上面提供的链接上的说明配置它

NB我希望有人在他/她的网络浏览器上输入http://192.168.43.124/app/site.py 以便能够访问我的网站。

192.168.43.124 是我的电脑 ip 地址,site.py 是一个 python webpy 脚本包含

#!C:\python27\python.exe
import web

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

class index:        
    def GET(self, name):
        if not name: 
            name = 'Nothing'
        return 'You want to get: ' + name + '. Is that right??'
if __name__ == "__main__":
    app.run()

【问题讨论】:

    标签: python apache cgi web-deployment


    【解决方案1】:

    192.168.43.124https://www.rfc-editor.org/rfc/rfc1918 中指定的本地保留网络地址。如果其他人不属于该本地网络,则该 IP 将无法供他们访问。您需要一个公开的 IP 地址,供公共用户访问该站点。

    使用外部 IP 地址,只要在任何路由器上配置了正确的端口转发并且允许外部流量通过任何防火墙,公众就可以访问该外部 IP 地址并使用 Web 应用程序。

    在您运行 Web 应用程序的机器上搜索“我的 ip 是什么”可能会显示您可以使用的外部 IP 地址。 https://www.google.com/#q=what+is+my+ip 但是您仍然需要确保所有路由器都正确转发端口,并且您运行 Apache 的端口(通常是 80)可供公众访问。例如,很多互联网服务提供商会为家庭用户屏蔽 80 端口。

    【讨论】:

      【解决方案2】:

      192.168 下的任何内容都只是内部网络地址,从其他地方看不到。

      您需要找到路由器的外部地址。您还需要将路由器配置为将端口 80 转发到运行您的服务器的机器。

      不过,您确实应该使用合适的网络主机;像 Heroku 这样的东西可能会在你想要的级别上免费。

      【讨论】:

        猜你喜欢
        • 2021-01-18
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-10-18
        • 1970-01-01
        相关资源
        最近更新 更多