在localhost外部运行PHP 5.4内置Web服务器

Sha*_*hui 27 php php-builtin-server

是的,在即将发布的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并且它们也不起作用.我知道它只是一个候选版本,但我想知道是否有其他人已经提出了解决此问题的解决方案,以便我可以使用指向我的hosts文件中127.0.0.1的实际域名来测试我的应用程序.操作系统是Windows 7 Professional SP1.

我已经尝试过的事情:1.谷歌搜索(duh)2.通过php.ini查看选项3.尝试127.0.0.1,我的局域网IP,我的WAN IP转发端口80并修复NAT环回问题(路由器运行DD -WRT)

dre*_*010 66

我在Windows XP系统上进行了这些测试,但是在Linux上也应该通过修改命令来完成相同的操作.

像这样运行PHP测试服务器:

C:/php/php.exe -S 0.0.0.0:80
or
/usr/bin/php -S 0.0.0.0:80
Run Code Online (Sandbox Code Playgroud)

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上使用主机文件,我将假域配置为指向我的WAN IP.我能够从外部访问PHP Web服务器.

也就是说,它只是一个用于测试的服务器,因此可能存在未知的安全风险,将其打开到外部世界.

希望对你有所帮助.