我正在尝试在Nginx中创建3个服务器
如果名称包含-testing
或-staging
,则可以匹配所有内容。
使用server_name中的-testing
匹配所有内容的一个。
一个与server_name中的-staging
匹配的所有内容。
最后两个不是问题。那些都在工作。我只是在与第一个人挣扎。
这是我试过的正则表达式:
~^.*(?!(-testing)|(-staging))\.example\.lh$
https://regex101.com/r/m8vXsL/1(删除了代字号)
但它仍然匹配包含这些单词的server_names。任何帮助将不胜感激。
答案 0 :(得分:2)
如果nginx
支持它(您在示例中选择了pcre,那么假设如此),只需插入<
即可获得负面的后视。即
^.*(?<!(-testing)|(-staging))\.example\.lh$
^