htaccess重写乱码样式表,没有尾部斜杠

时间:2015-03-25 03:46:31

标签: apache .htaccess mod-rewrite url-rewriting

当谈到.htaccess时,我就是这样一个菜鸟,并且无法解决这个问题。

的.htaccess

RewriteEngine On
RewriteBase /tests/shop/

RewriteRule ^(recover/[a-zA-Z0-9]+)/?$ recover.php?code=$1 [NC,L]
RewriteRule ^(login|register|logout|benefits|loyalty|recover)/?$ $1.php [NC,L]
RewriteRule ^(rs|cs|ha)/?$ game.php?game=$1 [NC,L]
RewriteRule ^(([a-z0-9\-]+/)*[a-z0-9\-]+)$ $1/ [NC,L]

当我像第4行一样进入/recover/code/目录时,样式表完全缺失,因为它认为子目录不同。

这就是我在头文件中包含样式表的方法:

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

我该如何解决这个问题?

另外,如何使重定向首先有斜杠?我会在哪里添加尾部斜杠到代码?

1 个答案:

答案 0 :(得分:1)

将您的链接更改为绝对网址或在页眉中添加基础(<head> </head>标记之间)。

根据你的重写基础,我假设你想要这样的东西:

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

<base href="/tests/shop/" />