我在nodejs和PHP中有一个应用程序。现在我使用不同的两者。 我可以在同一端口 8080
上运行node和apache是,有任何方法可以在8080上运行任何应用程序
由于
答案 0 :(得分:2)
端口通常只连接到一个应用程序。所以你必须使用不同的端口。
代理 - 但您可以在apache中创建虚拟主机并将此主机配置为代理。在此配置中,您可以访问同一端口上的node.js服务器。 node.js服务器将在另一个端口上运行。
答案 1 :(得分:0)
对于基于TCP的应用程序,没有。您一次只能在一个端口上侦听一个应用程序。如果你有2个网卡,你可以让一个应用程序监听第一个IP,第二个IP监听第二个IP,都使用端口8080 ....但我怀疑这是你的情况。
我猜你可以在UDP协议上运行它们,这可能允许你有两个应用程序监听同一个端口,但由于UDP不可靠而且它没有建立连接,只是发送/接收数据包。您可能会在UDP上遇到大量数据包丢失。
所以,简短回答 - 不。
答案 2 :(得分:-1)
实际上,可能有一种使用iptables的方法。添加这种性质的规则
iptables -A INPUT \ -p tcp \ -m bpf --bytecode "14,0 0 0 20,177" -j redirect .. Port 80
检查连接的前几个字节,然后重定向连接。然后,您可以在同一端口上接受http和node.js,但让服务器在不同的端口上运行。
上面的语法不正确,我没有尝试过,但我知道成功使用过这个策略的人。