Nginx重写的URL必须有破折号
此选项允许扩展名为.html且不包含斜杠的所有内容:Nginx重写的URL必须有破折号,nginx,url-rewriting,Nginx,Url Rewriting,此选项允许扩展名为.html且不包含斜杠的所有内容: rewrite ^/([^/]+).html$ ... 我需要添加另一个陷阱:URL必须至少包含一个破折号,然后才能重写 如何做到这一点?只需使用逻辑即可。至少有一个破折号的单词可以表示为两个中间有破折号的单词。因此,解决方案很简单: rewrite ^/([^/]+-[^/]+)\.html$. 此外,您忘记转义点(),因此您的regexp也与url/somesstrangehtml重写^/([^/]+-[^/]+)\.html$匹配。
rewrite ^/([^/]+).html$ ...
我需要添加另一个陷阱:URL必须至少包含一个破折号,然后才能重写
如何做到这一点?只需使用逻辑即可。至少有一个破折号的单词可以表示为两个中间有破折号的单词。因此,解决方案很简单:
rewrite ^/([^/]+-[^/]+)\.html$.
此外,您忘记转义点(
),因此您的regexp也与url/somesstrangehtml
重写^/([^/]+-[^/]+)\.html$
匹配。你还忘了逃出dot(
)@alexeyten谢谢你,它很管用。但是当你写评论时,我如何为你添加帮助点呢?