假設我的網站的域爲[http://mywebsite.com] [1],並打開index.php。該腳本從url獲取$ page,$ section,$ language變量。所以[http://mywebsite.com/index.php?lang=en & section = home & page = sitemap] [2]打開屬於「home」部分的英文站點地圖頁面。我希望將相同的網址重寫爲[http://mywebsite.com/home/sitemap_en.html] [3]。爲了達到這個目的,我已經把以下內容放在.htaccess中: RewriteCond %{REQUEST_URI} .+\/.+ RewriteRule ^(.+)\/(.+)_(mk|en|al)\.html$ index.php?lang=$3§ion=$1&page=$2 [L]
但是現在有一個很大的問題。當我訪問這樣的網址時,找不到文件,因爲文件style.css位於根文件夾中,而不是[http://mywebsite.com/home/style.css][4],並且服務器正在尋找它。 「家」不是真正的文件夾,它不存在,它只是一個部分。對於所有的jpg,png,js,gif等都是一樣的。我怎樣才能以我喜歡的方式重定向頁面,以及如何用真實路徑找到文件?RewriteRule更改文件的物理路徑
p.s.某些部分像[http://mywebsite.com/index.php?lang=en & section = contact] [5]根本沒有網頁。他們應該達到像這樣:[http://mywebsite.com/contact_en.html][6] 我有他們,以前的規則:RewriteRule ^(。+)_(mk | en | al)。 html $ index.php?lang = $ 2 & section = $ 1
非常感謝這個答案,我甚至不知道基本標籤是否存在。現在我不必編輯所有的hrefs,這是很多:) – pankipan4e 2011-04-21 15:24:12
啊,是的,更好的答案。 – Cups 2011-04-22 14:28:01