我有一个太基本的 php 应用程序,我想通过内置的 php 服务器运行它,它存在于我的 Windows 机器的 VM 中:
<?php
use \Psr\Http\Message\ServerRequestInterface as Request;
use \Psr\Http\Message\ResponseInterface as Response;
require '../vendor/autoload.php';
$app = new \Slim\App();
$app->get('/', function (Request $req, Response $res, $arg = []) {
return 'hello world!!';
});
$app->run();
我的项目结构
tree -I vendor
.
|-- cache
| `-- 6a
| `-- 532bg9987gt23f4356546poo999vvb234234.php
|-- composer.json
|-- composer.lock
|-- public
| `-- js
| `-- app.js
|-- routes
| `-- web.php
`-- views
`-- templates
`-- index.html
7 directories, 7 files
当我从我的虚拟机中运行 curl 时,它显然可以工作:
php -S localhost:9899&
curl localhost:9899/routes/web.php
Hello world!!
问题是当我尝试从我的浏览器(Windows 机器)连接到该服务器时,我得到
This site can’t be reached
虽然这不适用于我的 php 内置服务器,但它非常适用于使用nodejs开发的另外两个项目,这些项目与php位于同一 VM 上。
为什么我无法访问 php 内置服务器,尤其是可以访问nodejs内置服务器?