使用 .htaccess 重写 GET 变量
在 Web 开发中,通常需要创建干净且美观的 URL,同时保持请求的功能参数。这可以使用 .htaccess 重写规则来实现。
假设您有一个处理所有路由的 index.php 文件,接收 GET 变量作为“页面”参数。要实现以下 URL 重写:
http://localhost/index.php?page=controller
To:
http://localhost/controller/
您可以使用以下重写规则:
RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^([\w\d~%.:_\-]+)$ index.php?page= [NC]
来处理URL,您可以使用以下重写规则:
RewriteRule ^(.*)$ index.php?params= [NC, QSA]
使用此重写规则,您的实际 PHP文件将接收参数作为 GET 数组中的“params”。您可以使用如下代码分解“params”字符串来访问参数:
$params = explode("/", $_GET['params']); for($i = 0; $i < count($params); $i+=2) { echo $params[$i] . " has value: " . $params[$i+1] . "<br />"; }
此解决方案允许您在 PHP 脚本中访问 GET 参数时保持干净的 URL,从而提供用户友好且一致的方式网络体验。
以上是如何重写 GET 变量以使用 .htaccess 创建干净的 URL?的详细内容。更多信息请关注PHP中文网其他相关文章!