大家都知道,如果要运行php文件的话,需要搭建一个Web服务器,常见的中间件有IIS、Nginx、Apache,但是实际上从PHP 5.4开始,PHP就已经内置了一个Web服务器。但是需要注意的是,虽然PHP内置了服务器,但是PHP官网的建议是用来调试使用,如果要长期使用的话,还是建议使用IIS、Nginx或者Apache搭建的Web服务。
下面我们来看看如何使用PHP内置的服务器,注意PHP的版本必须大于等于PHP 5.4。
我们的测试环境是Centos 7,在安装了PHP 5.4或以上版本的系统中启动PHP内置服务器是非常简单的,只需要一条命令即可:
php -S IP地址:端口号 -t 默认网站目录
1、IP地址常见的是使用localhost,但是使用localhost的话,只能本地调试使用,我们如果想搭建外网可以访问的服务器,则需要填写0.0.0.0
2、端口号可以随便填写,只要当前系统没有被占用的就可以了,比如填写8888
3、-t参数指定网站的默认目录,假如不使用-t参数的话,那么网站目录默认为当前启动php内置服务器的目录
下面我们用例子说明一下:
在Centos系统中启动PHP内置服务器,并指定外网可以访问,端口号为8888,网站目录为/my/web/default
php -S 0.0.0.0:8888 -t /my/web/default
启动成功后,可以看到如下提示信息:
如果想要退出php内置服务器,则可以按下Ctrl + C
好了,那么现在我们的php内置服务器已经启动了,网站的目录是/my/web/default,在这个目录下我放了一个index.php文件,里面有一个echo函数,输出abcd,那么下面我们来试试在浏览器中访问。
在浏览器中打开:http://ip地址/index.php
IP地址换成大家自己服务器的IP地址,打开后看到如下效果:
然后我们回到系统中,可以PHP内置服务器的提示如下:
可以看到php内置服务器记录了浏览者的IP地址和访问的文件。到此为止PHP内置服务器的使用我们就讲完了,大家都明白怎么用了吗?
额外补充一点:如果需要使用路由过滤,则可以在启动命令的最后指定一个php文件,那么每次访问时,都会先访问这个php文件,然后我们可以在里面进行各种判断操作。详细用法可以看官方文档:http://php.net/manual/zh/features.commandline.webserver.php
ok
mjj通道