Sef URL CSS Problems



我尝试创建这样的搜索引擎友好URL;

RewriteRule ^m/([0-9]+)$ my.php?id=$1

但是,它获取没有 CSS 的页面。

如果我这样写:

RewriteRule ^([0-9]+)$ my.php?id=$1

它毫无问题地获取带有CSS的页面。

我该如何解决?

当你像这样编写CSS引用时:

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

这是一个相对网址。在http://example.com/上,它指向http://example.com/style.css,但在http://example.com/my/1上,它指向不存在的http://example.com/my/style.css

使用绝对 URL 可以解决此问题:

<link rel="stylesheet" type="text/css" href="/style.css">
可以通过

在每个页面的 head 标签中添加 base 属性来解决此问题:

<base href="http://www.example.com/" />

或在 CSS 之前添加/

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

发生的事情是,当您重定向页面时,它也在my/css中查找 css,而不是css添加上述内容将解决此问题。

最新更新