您可能希望使用 .htaccess 重写您的 URL。你可以使用这个 mod-rewrite 生成器:http://www.generateit.net/mod-rewrite
例子:
RewriteEngine On
RewriteRule ^([^/]*)$ /?page=$1 [L]
但正确且有条理的方式是使用路由器,试试Aura.Router
示例用法:
$routes = [
[
"name" => "My_route",
"pattern" => "/{page}",
],
[
"name" => "Another_route",
"pattern" => "/pages/{page}",
]
];
这是您的路由数组,路由器将遍历所有路由并检查给定的请求 url 是否与其中任何一个匹配。
$factory = new RouterFactory;
$router = $factory->newInstance();
foreach ($routes as $route) {
$router->add($route['name'], $route['pattern']);
}
$path = parse_url($_SERVER['REQUEST_URI'], PHP_URL_PATH);
$match = $router->match($path, $_SERVER);
if ($match) {
$params = $match->params;
echo $params['page'];
}
回显页面参数的 URL:http://www.finittra.com/about
您需要对 POST 请求执行与 get 相同的操作,但您需要手动将它们添加到 url 路径。至少我是怎么做的。