如何使用PHP内置的Web服务器

编辑本页

警告:您正在浏览的文档欧宝官网下载appob娱乐下载Symfony 2.7,现已不再维护。

本页的更新版本用于Syob娱乐下载mfony 6.2(当前稳定版本)。

如何使用PHP内置的Web服务器

2.6

在Symfony 2.6中引入了将服务器作为后台进程运行的功能。ob娱乐下载

从PHP 5.4开始,CLI SAPI附带了一个内置web服务器.它可以用于在开发期间本地运行PHP应用程序,用于测试或应用程序演示。这样,您就不必费心配置功能齐全的web服务器,例如Apache或Nginx

谨慎

内置的web服务器应该在受控的环境中运行。它不是为在公共网络上使用而设计的。

启动Web服务器

使用PHP的内置weob娱乐下载b服务器运行Symfony应用程序与执行服务器:启动命令:

1
PHP应用程序/控制台服务器:启动

这将启动web服务器localhost: 8000在后台为您的Symfony应用程序服务。ob娱乐下载

缺省情况下,web服务器监听环回设备的端口8000。你可以改变套接字传递IP地址和端口作为命令行参数:

1
PHP应用程序/控制台服务器:启动192.168.0.1:8080

请注意

您可以使用服务器:状态命令检查web服务器是否监听某个套接字:

1 2 3
PHP应用程序/控制台服务器:状态PHP应用程序/控制台服务器:状态192.168.0.1:8080

第一个命令显示您的Symfony应用程序是否通过服务器ob娱乐下载localhost: 8000,第二个也有同样的作用192.168.0.1:8080

请注意

在Symfonob娱乐下载y 2.6之前,服务器:运行命令用于启动内置web服务器。该命令仍然可用,并且行为略有不同。它不是在后台启动服务器,而是阻塞当前终端,直到您终止它(这通常通过按Ctrl和C来完成)。

如果您希望从虚拟机内部使用内置web服务器,然后从主机上的浏览器加载站点,则需要在0.0.0.0:8000地址(即分配给虚拟机的所有IP地址):

1
PHP应用程序/控制台服务器:启动0.0.0.0:8000

谨慎

你应该从来没有监听计算机上可直接从因特网访问的所有接口。内置web服务器不适合在公共网络上使用。

命令选项

内置的web服务器需要一个“路由器”脚本(请参阅上的“路由器”脚本)php.net)作为论点。ob娱乐下载中执行命令时,Symfony已经传递了这样一个路由器脚本刺激dev环境。使用——路由器选择使用自己的路由器脚本:

1
PHP应用程序/控制台服务器:start——router=app/config/my_router.php

如果应用程序的文档根与标准目录布局不同,则必须使用——docroot选择:

1
PHP应用程序/控制台服务器:start——docroot=public_html

停止服务器

完成后,可以简单地使用停止服务器:命令:

1
PHP应用程序/控制台服务器:停止

与start命令一样,如果您忽略套接字信息,Symfony将停止绑定到的web服务器ob娱乐下载localhost: 8000.当web服务器监听另一个IP地址或另一个端口时,只需传递套接字信息:

1
PHP应用程序/控制台服务器:停止192.168.0.1:8080
此工作,包括代码示例,是根据创作共用BY-SA 3.0许可证。