我想在我的计算机上托管一个 Web 服务器,最多一天。我的 ISP 已阻止端口 80,唯一开放的端口是 22。我的问题是,我是否可以转发此端口,以便可以通过端口 22 上的 WAN IP 访问服务器,例如 xx.xxx.x.xx:22,访问时应将请求转发到我的计算机 IP 地址 192.168.0.10 上的内部端口 80(Apache)?我知道端口 22 是用于 SSH 服务器的,但我的 Windows PC 上没有 SSH 服务器。我在 WAMP64 上运行 Web 服务器。我使用的是 Tenda F9 路由器
答案1
好吧,我找到了问题所在。问题是路由器和我的 IP 显示不同的 IP。我的路由器显示WAN my Ip as 192.xxx.x.xxx
。What is my Ip gives 102.xx.xx.xxx
感谢大家的贡献
答案2
您可以设置 Apache 在其配置中直接监听 22,然后以 http(s)://your-public-ip:22 访问您的服务器。您的路由器当然必须将 your-public-ip:22 转发到 192.168.0.10:22。如果您选择将 80 保留在 192.168.0.10 上供 Apache 使用,那么请将 :22 转发到 :80。这些服务实际上并不关心它们真正监听哪些端口。
我强烈建议使用 HTTPS,尽管使用了端口 80,但我认为这是计划,因为现在有些浏览器不太信任普通的 HTTP 连接。编辑:如果按照评论,只有一天,可能不值得。
EDIT2:鉴于 OP 发现他们的路由器 IP 不是 ISP 提供的公共 IP,让你的 WAMP 暂时公开可用的一种方法是使用ngrok HTTP 代理。