PHP 5.4内置Web服务器:简化开发与测试
PHP 5.4版本引入了一个内置Web服务器,专为开发和测试而设计,允许开发者在无需完整LAMP配置的情况下编写和测试代码。此服务器还可用于在CD-ROM、U盘或作为桌面应用程序分发便携式Web应用程序。
关键要点:
index.php
文件并从命令行启动服务器来测试服务器。服务器可在本地机器、机器的任何接口或特定IP地址访问。许多人认为PHP本身就是为Web设计的语言,而Python和Ruby等其他语言并非如此,因此为其他语言提供基本的服务器环境来帮助启动Web开发更有意义。他们会争辩说PHP不需要内置服务器。此外,如今大多数系统都已预装了个人Web服务器,或者可以通过几个命令或点击安装。事实上,PHP手册强调新的内置服务器仅用于开发用途,并建议不要在生产环境中使用它。除了一个(为控制台发送的日志输出着色)之外,没有针对它的特殊INI指令,文档的总体基调似乎是“我们现在也有一个Web服务器了,别再烦我们了”。尽管如此,该服务器仍在5.4版中实现,我认为它对于开发和测试都是很有价值的工具。例如,在我的机器上,我使用OSX预安装的Apache,并使用适合我开发风格的自定义配置,但有时我想尝试一些新的Web应用程序。使用PHP的内置服务器,我可以直接从我的下载或临时目录测试应用程序,然后只有在我真正需要时才将其移动到我的常规环境。好吧,一开始并不那么简单,因为许多应用程序都是针对Apache编写的,并使用了.htaccess
文件和mod_rewrite
。但我确信,有人(也许是你们中的一个,为什么不呢?)会为此功能编写适配器,我想成为第一个测试它的人。在本文中,我将解释新内置服务器的一些基本用法,并向您展示如何构建一个便携式个人开发服务器,该服务器可用于快速测试您的应用程序。我相信您和我一样渴望开始,所以让我们开始吧!
使用内置服务器
您需要安装PHP 5.4或更高版本才能使用内置服务器。要验证您的PHP版本,请在终端中调用php -v
。然后,您可以通过运行php -h
并查找特定于服务器的-S
和-t
选项来确定您的版本中是否可用该服务器。您可以通过在当前目录中创建一个包含对phpinfo()
的调用的基本index.php
文件来测试服务器,然后像这样启动服务器:
<code class="language-bash">[ec2-user@ip-10-229-67-156 ~]$ php -S <localhost>:8080</localhost></code>
在您的浏览器中,您现在应该能够看到内置服务器提供的内容。
每次客户端访问都会在控制台窗口写入一个新的日志行:
<code>[Sun Feb 26 18:55:30 2012] 80.180.55.37:36318 [200]: / [Sun Feb 26 18:56:23 2012] 80.180.55.37:36584 [200]: /</code>
回顾PHP的命令行选项,-S
用于指定服务器将绑定到的地址。其值可以是:
localhost
– 服务器仅可在本地机器访问0.0.0.0
– 服务器可从机器的任何接口(有线或无线)访问-t
允许您告诉服务器将其文档根目录定位到另一个目录。例如:
<code class="language-bash">[ec2-user@ip-10-229-67-156 ~]$ php -S <localhost>:8090 -t /home/ec2-user/public</localhost></code>
或者,您还可以提供特定PHP文件的名称,例如index.php
或router.php
文件。
<code class="language-bash">[ec2-user@ip-10-229-67-156 ~]$ php -S <localhost>:8080 -t /home/ec2-user/public public/index.php</localhost></code>
此类路由脚本的输出将由服务器解析和执行。
...(以下内容与原文类似,但对语句结构、词汇和表达方式进行了调整,保持了原文意思不变)...
(剩余部分类似处理,将原文段落进行伪原创,保持图片位置和格式不变)
以上是利用PHP的内置服务器的详细内容。更多信息请关注PHP中文网其他相关文章!