【问题标题】:mix-cased Apache rewrite rule混合大小写的 Apache 重写规则
【发布时间】:2012-10-12 03:37:16
【问题描述】:

我在这些路径上有一些资源:

/application/myFoo
/application/myBar

总是 'my' 后跟一个大写的名字

我想重定向

/myfoo, /myFOO, /myFoo, (even /foo, /Foo if possible)

第一个网址,第二个网址也是如此

RewriteRule ^/my(.*) /application/my$1 [L,NC]

目前是我的解决方案,它适用于 /myFoo、/mYFoo,但不适用于 /myfoo、/foo

参考:mod_rewrite - change URL case(有点不同,因为我不想将所有 %{REQUEST_URI} 全部大写

【问题讨论】:

  • RewriteRule ^/?(?:my)?([a-z])(.*) /application/my${uppercase:$1}${lowercase:$2} [L,NC]

标签: regex apache mod-rewrite apache2


【解决方案1】:

这是一种可能的解决方案

RewriteEngine   On
RewriteMap uppercase int:toupper
RewriteMap lowercase int:tolower
RewriteCond %{REQUEST_URI} !^/(lib|system|application)/
RewriteRule ^/?(?:my)?([a-z])(.*) /application/my${uppercase:$1}${lowercase:$2} [L,NC]

【讨论】:

    猜你喜欢
    • 2010-11-24
    • 1970-01-01
    • 2020-02-27
    • 1970-01-01
    • 2011-09-02
    • 2011-10-26
    • 1970-01-01
    相关资源
    最近更新 更多