PHP内置Web Server_PHP -S 命令行

lys2018年01月27日 0条评论

PHP 5.4.0起, CLI SAPI 提供了一个内置的Web服务器。

php -S localhost:8000 [-t /var/www/web]

这个内置的Web服务器主要用于本地开发使用,不可用于线上产品环境。

URI请求会被发送到PHP所在的的工作目录(Working Directory)进行处理,除非你使用了-t参数来自定义不同的目录。

如果请求未指定执行哪个PHP文件,则默认执行目录内的index.php 或者 index.html。如果这两个文件都不存在,服务器会返回404错误。

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

执行

php -S localhost:8000

终端窗口会显示:

 php -S localhost:8000
PHP 5.6.25 Development Server started at Sat Jan 27 10:48:37 2018
Listening on http://localhost:8000
Document root is E:\project\lys
Press Ctrl-C to quit.

也可以指定目录 (即网站入口文件所在目录)

php -S localhost:8000 -t E:\project\lys\foo

更多参考可以查看

http://php.net/manual/zh/features.commandline.webserver.php