在本地主机之外运行PHP 5.4内置Web服务器

8zzbczxx  于 2022-12-25  发布在  PHP
关注(0)|答案(1)|浏览(131)

是的,在即将发布的PHP 5.4中有一个内置的Web服务器,您可以在他们的候选版本中试用(我也是最近才发现这一点的!)
http://php.net/manual/en/features.commandline.webserver.php
我需要帮助弄清楚的是,有没有办法让它在localhost以外的域名上运行(它在localhost,端口80上运行得很好)?甚至127.0.0.1都不起作用。我已经在我的hosts文件中放入了虚拟主机名来指向127.0.0.1,它们也不起作用。我知道它只是一个候选版本,但我想知道是否有其他人已经想出了这个问题的解决方案,以便我可以测试我的应用程序与实际域名指向127. 0. 0. 1在我的主机文件。操作系统是Windows 7专业版SP1。
我已经尝试过的事情:1.谷歌搜索(duh)2.查看php.ini中的选项3.试用127.0.0.1、我的LAN IP、我的WAN IP(端口80转发)和NAT环回问题修复(路由器运行DD-WRT)

pbpqsu0x

pbpqsu0x1#

我在Windows XP系统上进行了这些测试,但通过修改命令,在Linux上也应该可以进行同样的测试。
像这样运行PHP测试服务器:

C:/php/php.exe -S 0.0.0.0:80
or
/usr/bin/php -S 0.0.0.0:80

0.0.0.0 将绑定到系统上的所有可用IP地址。
在网络上的另一台机器上,我使用自定义域配置hosts文件指向运行PHP的系统的内部IP。这不是127.0.0.1,因为它指的是本地主机,在我的情况下,我将我的主PC指向192.168.88.247,这是运行PHP的XP机器。注意防火墙应该被禁用或设置为允许运行php的机器上端口80的流量。
我将路由器配置为将流量从外部端口80转发到192.168.88.247:80。然后使用外部网络中PC上的hosts文件,将伪域配置为指向我的WAN IP。我能够从外部访问PHP Web服务器。
也就是说,它只是一个用于测试的服务器,因此对外开放可能存在未知的安全风险。

相关问题