📜  htaccess 路由到 index.php - Shell-Bash (1)

📅  最后修改于: 2023-12-03 15:15:33.013000             🧑  作者: Mango

htaccess 路由到 index.php

当我们在使用 PHP 开发网站时,有时候我们会需要通过 URL 地址来访问不同的页面,而这些页面往往需要通过一些参数进行区分。为了实现这个需求,我们可以使用 htaccess 文件来路由到 index.php 中进行处理。本文将介绍如何通过 htaccess 文件来实现路由。

简介

.htaccess 文件是在 Apache 服务器上用于配置网站的文件。它可以用来重定向网页、隐藏文件扩展名、设置错误页面等。这篇教程将会介绍如何使用 htaccess 文件来做 URL 路由。

步骤
  1. 创建一个 htaccess 文件,命名为 .htaccess。
  2. 在 htaccess 文件中加入以下内容:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^/]+)/?$ index.php?page=$1 [L]

上述代码中:

  • RewriteEngine On 表示开启 Rewrite 模块。
  • RewriteCond %{REQUEST_FILENAME} !-d 表示如果请求的 URL 不是一个目录,则跳过下一条 RewriteRule。
  • RewriteCond %{REQUEST_FILENAME} !-f 表示如果请求的 URL 不是一个文件,则跳过下一条 RewriteRule。
  • RewriteRule ^([^/]+)/?$ index.php?page=$1 [L] 表示任何非文件的请求都会被路由到 index.php 中,并作为 page 的值传递。例如,对于 URL example.com/about,会被路由到 example.com/index.php?page=about
  1. 在 index.php 中通过 $_GET['page'] 来获取传递的参数,然后根据参数来显示不同的页面。
<?php

$page = isset($_GET['page']) ? $_GET['page'] : 'home';

switch ($page) {
    case 'home':
        // 显示首页
        break;
    case 'about':
        // 显示关于我们页面
        break;
    case 'contact':
        // 显示联系我们页面
        break;
    default:
        // 显示错误页面
        break;
}
结论

使用 htaccess 文件来做 URL 路由可以让我们更加方便的管理和处理页面。通过本文的介绍,希望可以对大家有所帮助。