Nginx重写必须有短划线的URL

时间:2014-03-27 06:42:21

标签: nginx url-rewriting

这个允许包含没有斜杠的.html扩展名的所有内容:

rewrite ^/([^/]+).html$ ...

我需要添加另一个catch:URL必须包含至少一个破折号,然后才能重写。

怎么做?

1 个答案:

答案 0 :(得分:1)

只需使用逻辑。带有至少一个短划线的单词可以表示为两个单词,它们之间有短划线。所以解决方案很简单:

rewrite ^/([^/]+-[^/]+)\.html$.

你忘了逃避点(.),所以你的正则表达式也匹配网址/somesstrangehtml