【问题标题】:How to host server from laptop?如何从笔记本电脑托管服务器?
【发布时间】:2013-09-12 12:16:11
【问题描述】:

我正在尝试使我的笔记本电脑成为 http 服务器。首先,我正在跑步:

“python -m SimpleHTTPServer 8080”

我想我应该可以通过http://my.pub.lic.ip:8080 访问此服务器(我从 www.whatismyipaddress.com 获得了 my.pub.lic.ip)。但是,这不起作用。我不知道问题是什么。会不会是这样:

  1. 网络服务提供商不允许托管?
  2. 禁用防火墙? (我确实尝试过“sudo ufw disable”(我运行 ubuntu),但没有解决问题)。
  3. URL 中的 8080 端口没有映射到我机器上的 8080? (我应该做一些端口转发还是什么?如果是,我应该怎么做?)

【问题讨论】:

  • 肯定是端口转发。如果您需要有关配置的帮助,请查看您的路由器文档(或在网上)。
  • 您是否想让您的应用程序对互联网上的所有人可见?
  • 您从哪里访问它?您的一台路由器可以提供 NAT 吗?它们的行为在很多方面都像防火墙
  • @LaurentJalbertSimard:谢谢!除了我使用谷歌之外,如果你能指出一些你以前看过的文档,那就太好了。
  • @user814064:是的,这就是我想要做的。

标签: python http port portforwarding httpserver


【解决方案1】:

第一个是您必须为运行服务器的计算机设置静态本地 IP。

如果您想从本地网络访问它,您真正需要做的就是在防火墙中打开端口 8080,然后在网络上的另一台计算机上输入服务器的本地 IP 即可。 .

本地网络示例:192.168.1.150:8080

但是如果你想为公众运行它,你必须进入你的路由器并启用端口转发到端口 8080 并在你的防火墙中打开端口 8080。

公共访问示例,其中 x.x.x.x 是公共 ip:x.x.x.x:8080

如果还有什么,请告诉我。 :)

【讨论】:

    【解决方案2】:

    连接到 127.0.0.1 而不是您的公共 IP。

    127.0.0.1 被称为 localhost,总是指向你自己的机器。

    这样,任何 NAT 路由防火墙或匿名代理服务器是否将您的本地网络 IP 隐藏在 whatismyipaddress.com 中都没关系

    【讨论】:

    • 你要我使用127.0.0.1:8080 吗?如果是这样,它对我有用,但不允许远程机器访问我的服务器,对吧?
    • 是的,这至少会告诉您服务器正在您的笔记本电脑上成功运行。如果您希望互联网上的某人也可以访问它,那么假设您有一个带有家庭路由器/调制解调器的标准家庭设置,那么您需要在路由器上设置端口转发以转发端口 8080。只有路由器真正拥有公共ip地址,所以当有人连接到8080时,他们正在连接到路由器。您需要告诉路由器将该连接转发到您的笔记本电脑
    【解决方案3】:

    感谢所有投入。我最近发现了你们所说的“打开”端口是什么意思。答案就在 iptables 中(具体如下:https://superuser.com/questions/634469/need-iptables-rule-to-accept-all-incoming-traffic

    同样对于外部客户端访问服务器,必须更改 /etc/hosts 文件以建立服务器名称 -> IP 映射。

    这篇文章对我这个不懂网络基础知识的人真的很有帮助 (http://computernetworkingnotes.com/network-administration/how-to-configure-apache-server-in-linux.html)。它提供了设置 apache 服务器的逐步过程。

    再次感谢!

    【讨论】:

      猜你喜欢
      • 2015-10-31
      • 1970-01-01
      • 1970-01-01
      • 2018-01-25
      • 2011-06-10
      • 1970-01-01
      • 1970-01-01
      • 2016-02-25
      • 1970-01-01
      相关资源
      最近更新 更多