我使用以下URL重寫設置:URL重寫打破鏈接到CSS
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php?url=$1 [QSA,L]
在index.php
是解析$_GET['url']
因此,在下面的例子:
ROOT/user/id/1/name/bobby // user is the page, id = 1, name = bobby
ROOT/blog/post/123/title/welcome // blog is the page, post = 123, title = welcome
,使得第一參數(?我不知道如何調用它)是頁面名稱,那麼以下幾個參數就像「鍵/值」。 現在,當我瀏覽ROOT/
鏈接到插入到頁面的HTML和頁面內的樣式表顯示正確。 我瀏覽ROOT/index
(與ROOT/
相同)它正確地顯示頁面(包含內容和其他內容),但鏈接(即使在html結構中正確寫入)到樣式表不加載。我可以看到,從我的網頁沒有CSS時,我加載它的事實。
我該如何解決這個問題?
編輯
CSS文件的路徑如下:
project/view/css/common.css
是它包含該文件是在
project/public/index.php // the one with .htaccess and rewrite rules
這使我做一個鏈接(內index.php)如
../view/css/common.css
但是,這工作根據網址看起來不同。對於例子:
# For URL = public/
project/view/css/common.css // good
# For URL = public/index/
project/public/view/css/common.css // broken
# For URL = public/index/key/value
project/public/index/key/view/css/common.css // broken
你的CSS鏈接在你的html樣子是什麼樣的?他們是否有前面的斜線? – davogotland 2011-03-28 17:49:55
@davogotland,我的鏈接看起來像真正的路徑鏈接。 – Shoe 2011-03-28 20:06:03
@davogotland,他們看起來像這樣http://localhost/project/public/view/css/index.css – Shoe 2011-03-28 20:22:59