2015-03-25 64 views
0

當我提到.htaccess時,我很喜歡這個noob,並且無法弄清楚這一點。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

請將您的鏈接更改爲絕對網址或在您的頁面標題中添加一個基礎(在<head> </head>標記之間)。

根據您的重寫的基礎,我想你會想要麼是這樣的:

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

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

太謝謝你了!你知道如何做尾部斜線(我的問題的最後一行)嗎? – invidious 2015-03-25 04:30:35

+0

@invidious y正則表達式,你有匹配一個可選的尾部斜槓,我不知道你如何產生你的鏈接,但你需要在那裏添加一個尾部斜線。 – 2015-03-25 05:14:45