2010-08-07 234 views
2

我得到了與以下兩行的問題:RewriteCond/RewriteRule不區分大小寫和尾部斜槓功能?

RewriteCond %{REQUEST_FILENAME}.html -f 
RewriteRule ^(.+[^/])$ /$1.html [L] 

目標:重定向「使用domain.tld /測試/」(僅當的test.html存在),從而輸出「使用domain.tld /測試的內容html的」。

  • 如何使這種不區分大小寫: 「使用domain.tld /測試」 - >使用domain.tld/test.html的**
  • 如何使它接受結尾的斜線:「使用domain.tld /測試/「也應該工作

謝謝!

**我無法獲得RewriteMap小寫int:tolower的工作,任何幫助表示讚賞。

+0

投票關閉,因爲這是遠不及一個編程問題。這更適合系統管理,因此應該發佈到serverfault.com – t0mm13b 2010-08-07 22:13:47

+0

我在發佈之前進行了搜索。 SO上有超過30頁的類似問題。請不要關閉我! – LGP 2010-08-07 22:30:55

回答

0

嘗試這種情況:

RewriteRule (.+)/$ $1 
RewriteCond %{DOCUMENT_ROOT}/${tolower:$1}.html -f 
RewriteRule ^(.+[^/])$ /$1.html [L] 

此外RewriteMap只能在服務器配置或虛擬主機上下文而不是在一個.htaccess文件使用。所以你需要在那裏定義重寫映射。