2016-09-07 49 views
1

NGINX位置重写URL目前我有这个位置块:带或不带斜线

location = /events { 
    rewrite^https://totallydifferenturl.com; 
} 

这从mywebsite/events成功重定向,但我想这一块也处理mywebsite/events/

尝试location = /events/?没有工作。

回答

6

您需要~操作,使正则表达式匹配,因为你只需要匹配website/eventswebsite/events/如满弦,你将需要锚^$周围的模式:

location ~ ^/events/?$ 
     ^^  ^

^/events/?$模式匹配:

  • ^ - 输入开始
  • /events - 文字串/events
  • /? - 一个或零的符号/
  • $ - 输入端。
+0

这是完美的。如果我忽略锚点并简单地使用'/ events /?'它会匹配类似'website/random/events/query'的东西会有什么意义? – robinnnnn

+1

是的,它会匹配字符串中任何位置的'/ events'或'/ events /'。 –