在学习 slim framework ,用 mac 下直接 php -S localhost:8085
启动的一个示例代码:
require '../vendor/autoload.php';
define("WWW_PATH", dirname(realpath(__FILE__)));
define("ROOT_PATH", dirname(WWW_PATH));
$app = new \Slim\App();
$app->group('/utils', function () use ($app) {
$app->get('/date', function ($request, $response) {
return $response->getBody()->write(date('Y-m-d H:i:s'));
});
$app->get('/time', function ($request, $response) {
return $response->getBody()->write(time());
});
})->add(function ($request, $response, $next) {
$response->getBody()->write('It is now ');
$response = $next($request, $response);
$response->getBody()->write('. Enjoy!');
return $response;
});
$app->run();
这时候直接访问 http://localhost:8085/utils/time 就可以看到效果。
比较奇怪,这个 url 明显是 rewrite 过的,然而我并没有做 rewrite 。按理说不应该请求到./utils/time 目录下去么?
web 目录下也没有.htaccess 之类的文件,为啥自动做了 rewrite ?
难道 php 自带的 web server 会自动给我做 rewrite ?但它怎么会知道我的 rewrite 规则呢?求解。。。
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.