laravel web server设置远程访问及原理

laravel中可以用命令行php artisan serve 启动web server,并通过localhost:8000访问项目。

但是因为开发环境为虚拟机部署项目,然后通过端口访问,所以开启服务之后无法远程访问。

网上相关说明比较少,通过查看laravel配置发现

php artisan serve --host 0.0.0.0

这样既可远程访问。

原理是因为php5.4版本开始,php内置了一个web server,可以本地快速开发。

php -S 0.0.0.0:8001

这样就会开启一个根目录为命令所在目录的http服务,当收到访问时,会默认执行目录里的index文件,如果不存在则404 error。

Example #1 启动Web服务器  服务于当前目录
$ php -S localhost:8000
Example #2 启动时指定根目录
$ php -S localhost:8000 -t foo/
Example #3 使用路由(Router)脚本
$ php -S localhost:8000 router.php

tip:内置web服务器主要用于本地开发,不可用于线上产品环境。

posted @ 2020-01-15 18:54  iKano  阅读(853)  评论(0编辑  收藏  举报