网址重写破坏了我的包含


Url rewriting broke my include

我的URL重写有问题,让我告诉你,我的代码是:索引.php:

include 'header.php';
if(!isset($_GET['page']) or !file_exists($_GET['page'] . '.php') {
    include_once 'home.php';
} else {
    include_once $_GET['page'] . '.php';
}
include 'footer.php';

这里的代码适用于/index.php?page=test但是使用我的重写网址

RewriteRule ^page/(.*)$ index.php?page=$1 [QSA,L]

这里的代码不适用于 url/page/test,问题是他只包含 test.php不包括我的页眉和页脚,我不知道为什么......

听起来像是一个绝对/相对的 URL 问题。当您转到/page/XXXX URL 时,您已将相对 URL 库从 / 更改为 /page/ ,因此您需要更改所有链接,使它们成为绝对 URL 或在页面标题中包含相对 URL 库:

<base href="/" />