2010-08-07 223 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文件使用。所以你需要在那里定义重写映射。