我想让我的网站在全球范围内可用。我使用xampp服务器进行托管。我无法访问任何类型的服务器和调制解调器。情况如下所示:
我的站点服务器具有由wifi路由器分配的本地IP,并且它运行Windows 8。
请记住,我无法访问任何类型的服务器和调制解调器,因此无法进行端口转发(超出我的范围)。
答案 0 :(得分:3)
它实际上很难,但并非不可能。
一种方法,我会这样做:
我会在互联网上托管一个页面。
然后接受请求并将其存储在数据库中。
我的一个程序将始终从我的电脑上运行。
然后检查请求并将请求卷曲到localhost。为此,您可以使用Node.js(使用GET方法从数据库获取数据并将其卷曲到localhost)。
这是我能想到的最好的。我正在努力,当代码准备就绪时,我将把它作为开源并通知你:)
但是,这很困难,因为你需要让用户的请求睡2秒然后转移它。 它很慢,但可能适合你。
缺点:
程序会很慢,内存使用会更多。
多次破裂可能会发生。
高带宽浪费
如果没有加密,可以使用MIM(中间人)。
优势:
间接托管方式
无需担心代码丢失。
我期待着更好的选择,我想再次提出这个问题。
答案 1 :(得分:2)
如果无法在LAN中打开必要的端口,则需要访问外部服务器。但是,外部服务器不需要托管任何代码,例如
安装程序包以将远程重定向到本地端口:
一个。使用socat:
使用您的发行包管理器
socat
通过SSH连接:ssh -N -R 42500:127.0.0.1:80 -o ServerAliveInterval=60 ubuntu@xxx.xxx.xxx.xxx -N -R 8080:localhost:80 "socat TCP-LISTEN:8080,fork TCP:127.0.0.1:42500"
湾使用网络服务器和反向代理:
安装apache或nginx以及任何所需的反向代理模块,并将VirtualHost配置为代理对本地端口的请求,例如: :8080
- > 127.0.0.1:42500
通过SSH连接:ssh -N -R 42500:127.0.0.1:80 -o ServerAliveInterval=60 ubuntu@xxx.xxx.xxx.xxx
您的机器现在可通过ec2实例http://xxx.xxx.xxx.xxx:8080/
访问。
我在调试Web服务回调时偶尔会使用这种技术。
2014年2月17日更新
如果您是Windows用户,则需要安装第三方工具以支持ssh
。选项包括:
如果您不熟悉* nix工具,那么PuTTY是最简单的选择。要在PuTTY中配置远程端口转发,请展开以下设置:Connection -> SSH -> Tunnels
。根据前面描述的方案,将Source port
填充为42500
,将Desination
填充为127.0.0.1:80
并勾选Remote
选项。 (您可能还需要在Connection -> SSH -> Auth
选项卡中添加PuTTY兼容私钥的路径,具体取决于您的服务器配置。
要测试您是否已成功转发端口,请在服务器上执行命令netstat -lnt
。您将看到类似于的输出:
tcp 0 0 127.0.0.1:42500 0.0.0.0:* LISTEN
最后,您可以使用curl http://127.0.0.1:42500
进行测试。您将在端口80上看到自己的计算机Web根目录的输出。
答案 2 :(得分:1)
如果您没有公共IP地址且无法使用端口转发,则无法托管该站点
答案 3 :(得分:1)
正如人们所说,你需要一个公共IP地址。但是,即使您这样做,也不应将xampp用作公共服务器,因为它是为开发而设计的,因此禁用了某些安全设置。
我建议购买一些共享的虚拟主机,并上传到它。 (如果你谷歌'共享网络托管',你可以获得便宜的托管服务,加上免费的.tk域名可用:http://www.dot.tk/)
答案 4 :(得分:1)
贵公司是否有任何VPN网络? 如果确实如此并且您可以访问vpn网络,则可以将服务器包含到vpn网络中,并且您的guest虚拟机只需要登录到您公司的VPN网络,然后就像在本地网络中一样访问您的站点而不使用端口转发。由于您的数据非常机密,我认为使用vpn还有助于提高数据的安全性。
如果我错了,请纠正我。
谢谢。
答案 5 :(得分:1)
让我们把它分成几步。
我将在你的场景中做的是:
将路由器设置中的端口“80”转发到我的本地计算机IP地址。(主要是标记为“虚拟服务器”,“防火墙”,“端口转发”等设置中的路由器到路由器)< / p>
假设您有一个本地IP“192.168.1.3”和全局/路由器IP“254.232.123.232”,那么您将所有向路由器完成的HTTP请求重定向到您的本地IP。
[[[[254.232.123.232]]]] - +:80 + - ---------&gt; 192.168.1.3
现在这很好,但是你需要解决路由器的动态IP问题。但是不要担心,多亏一些免费网站会很容易!
答案 6 :(得分:1)
没有端口转发,您无法提出要求。