代码之家  ›  专栏  ›  技术社区  ›  Y. EY

如何编写htaccess重写规则以匹配连字符?

  •  0
  • Y. EY  · 技术社区  · 7 年前

    我想将imi目录中的所有php文件转换为html

    。htaccess规则:

    RewriteRule ^imi/([0-9|a-z]*).html$ imi/$1.php
    

    正确重写以下内容:

    • Imi/abc。php到imi/abc。html
    • Imi/6s。php到imi/6s。html
    • Imi/hi4。php到imi/hi4。html
    • Imi/5。php到imi/5。html
    • Imi/ho12bc。php到imi/ho12bc。html
    • Imi/小姐。php到imi/miss。html

    然而这些没有:

    • Imi/abc-1。php至imi/abc-1。html
    • Imi/6s我的。php到imi/6s my。html
    • Imi/hi4-oe-5。php到imi/hi4-oe-5。html
    • Imi/5-lb.php到Imi/5-lb.html
    • Imi/ho12bc-123-us。php至imi/ho12bc-123-us。html
    • Imi/先生小姐。php给imi/先生小姐。html

    为什么地址与 - 不工作

    1 回复  |  直到 7 年前
        1
  •  0
  •   e_i_pi    7 年前

    重写规则应将连字符作为匹配模式中的第一个字符。此外,这里不需要管道字符。尝试以下操作:

    RewriteRule ^imi/([-0-9a-z]*).html$ imi/$1.php