2012-01-17 43 views
0

我使用winXP和AppServ。我的網站根目錄中有一個「showitem.php」。一個例子用法: www.mydomain.com/showitem.php?id=123
我想使用鏈接像下面:
www.mydomain.com/item/123
在.htaccess我寫這行:
RewriteRule ^item/([^/]+)$ showitem.php?id=$1如何解決CSS包括Apache RewriteRule之後的錯誤?

服務器指示showitem.php即可ID是成功接收。然而,主要的問題是與CSS和JS文件。如果我將「css/style.css」設置爲「/css/style.css」,則頁面顯示在互聯網上,但不顯示在本地主機上,因爲root是「localhost」,但文件位於「localhost/mydomain」下。我也嘗試了.css文件的「!-f」條件,但它沒有幫助,而且我無法理解。爲了解決這個問題,我應該將錯誤的css文件解釋到正確的位置,所以我想將客戶端請求「item/css/style.css」重定向到它的原始位置「css/style.css」。我爲localhost添加了以下規則,但有沒有其他方法?

RewriteRule ^item/css/([^/]+)$ /mydomain/css/$1 
RewriteRule ^item/img/([^/]+)$ /mydomain/img/$1 

回答

1

在你的html頭文件中設置一個基本標籤。

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

然後設置樣式錶鏈接相對於基座,例如路徑

<link href="css/style.css" />

+0

因爲我在同一時間,因爲他們是在我的本地開發CSS,JS和PHP,這不是我的實際。 – Mehmed 2012-01-17 11:22:42

+0

爲什麼這應該不切實際?將其設置爲「http:// localhost /'。我剛剛從您的示例中獲取了數據。 – pduersteler 2012-01-17 11:44:02

+0

thnx尋求幫助,它有助於和良好的做法 – 1Mayur 2013-07-20 08:27:09

0

你可以寫這些的文件.htaccess

ErrorDocument 404 /error_404.php 

/error_404.php是你想放的東西在那裏,你的錯誤文件。