2014-03-07 43 views
0

我已經配置.htaccess文件:自定義錯誤404頁,配置錯誤

RewriteEngine On 
ErrorDocument 404 /page-404.html 

當我輸入這工作得很好:www.mydomain.com/whatever-to-get-404-error,但是,當我使用www.mydomain.com/some_folder/whatever-to-get-404-error我得到一個沒有CSS的頁面。我的瀏覽器開始在「some_folder」中尋找css,這當然不存在。

爲什麼會發生這種情況,我該如何解決?

+0

肯定那只是一個相對路徑VS絕對的HTML中的樣式表,沒有什麼與htaccess的 – OJay

回答

4

不要在您的404頁面的標記中使用相對路徑到您的CSS文件。使用絕對路徑(最簡單的方法,用/開始路徑)。

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

這是一個相對href,它看起來在當前文件夾404.css

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

這是一個絕對路徑,它看起來在根文件夾404.css

+0

做要確定我是否正確:用http://mydomain.com/css/cssfile.css重新配置404頁面到樣式表的路徑? – TheKolanN

+0

你不需要指定主機,在你的例子中你可以簡單地設置'href =「/ css/cssfile.css」' – Madbreaks

1

雖然使用絕對URL是最佳選擇。如果你有太多的地方需要修改,那麼你可以嘗試在你的頁面的HTML頭添加此:

<base href="/" />