PHP 路由 - 样式表无效

PHP Routing - stylesheets have no effect

我在 PHP 中创建了一个基本的路由系统。 url 被拆分成一个数组,这样我就可以根据 URL 决定显示什么(例如:www.domain.com/page/option/param)。

所以在我的 index.php 中,我为页眉、内容和页脚定义了一个 div,并且 /page/ 确定要包含在内容中的文件-div。路由有效,并且 HTML 已加载,但样式表似乎没有。当我直接在文件中 <link> 样式表时它也不起作用(并且据说可以 link 正文中的样式表,属性为 itemprop 而不是 rel) - 不管怎样,有人知道是什么原因造成的吗?

.htaccess:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.+)$ index.php?uri= [QSA,L]

我的路由使用 $_SERVER['REQUEST_URI'] 来获取 URL,然后我删除 /index 并将其余部分拆分为一个数组 - 所有这些工作正常。

提前致谢。

大多数 "fake" 或友好 URL 的重写,您需要使用 absolute path 或使用 base 标签指定样式表的位置head 部分。

例如

<base href="http://example.com" />
<link href="css/style.css" rel="stylesheet" type="text/css" />
//The CSS file above will load from http://example.com/css/style.css

您可以在 link 标记中的路径前添加反斜杠,使其从根目录开始。

<link href="/path/to/style.css" rel="stylesheet" type="text/css" />