您的位置 首页 php

PHP内置Web服务器的使用(专用于开发调试和命令行)

PHP 从5.4版本开始,CLI SAPI 提供了一个内置的Web Server,也就是说自带了一个小型的用于执行PHP代码的Web服务器,这个内置的Web Server主要用于本地开发使用,不可用于实际生产环境。

工作原理:

URI请求会被发送到PHP可执行文件所在的工作目录(Working Directory)进行处理,除非你使用了-t参数来自定义不同的目录,如果请求未指定执行哪个PHP文件,则默认执行目录内的index.php 或者 index.html。如果这两个文件都不存在,服务器会返回404错误。

启动方式:

通过命令行启动这个Web Server。如果指定了一个PHP文件,则这个文件会作为一个“路由”脚本,意味着每次请求都会先执行这个脚本。如果这个脚本返回 FALSE ,那么直接返回请求的文件(例如请求静态文件不作任何处理)。否则会把输出返回到浏览器。

 // 以下代码必须在命令行或终端中执行
php -S localhost:8000  

启动时指定访问目录:

 # cd /www
# php -S localhost:8000 -t public/
PHP 5.4.0 Development Server started at Thu Jul 21 10:50:26 2011
Listening on localhost:8000
Document root is /www/public
Press Ctrl-C to quit  

该内置服务器默认只处理文本,如果客户端请求的是图片,则需要通过一个“路由”脚本进行处理:

 # php -S localhost:8000 router.php  
 <?php
// router.php
// 对于请求的是图片,return false即可直接返回请求的文件
if (preg_match('/\.(?:png|jpg|jpeg|gif)$/', $_SERVER["REQUEST_URI"])) {
    return false;    // 直接返回请求的文件
} else { 
    echo "<p>Hello World!</p>";
}  

Windows下的演示:

文章来源:智云一二三科技

文章标题:PHP内置Web服务器的使用(专用于开发调试和命令行)

文章地址:https://www.zhihuclub.com/78376.shtml

关于作者: 智云科技

热门文章

网站地图