server_name与
不匹配我想与这样的FQDN匹配 我想出了
server_name "~^(www.)?ucwebapi-uccore(\d{0,3})-(\d{0,3})\.testme\.net";
匹配
ucwebapi.testme.net
ucwebapi-uccore.testme.net
ucwebapi-uccore1-0.testme.net
ucwebapi-uccore999-999.testme.net
使用https://regex101.com/r/tAwEp9/2
进行验证使用
进行测试server_name "~^(www.)?ucwebapi-uccore(\d{0,3})-(\d{0,3})\.testme\.net ucwebapi1.testme.net";
查看ucwebapi1.testme.de服务器是否可以访问。
有什么限制我不知道吗? 谢谢。
答案 0 :(得分:3)
试试这个:
server_name "~^(www.)?ucwebapi(-uccore)?(\d{1,3}-\d{1,3})?\.testme\.net";
看起来你的regex101页面和配置中的内容之间有一些缺失的字符。
我也调了一下它以免它匹配:
ucwebapi-uccore999.testme.net
ucwebapi-uccore-.testme.net
ucwebapi-uccore-999.testme.net
答案 1 :(得分:1)
我从来没有见过带双引号的server_name配置......但是如果能解决问题我就不会感到害羞。
一些示例配置here。
编辑:您是否有这样的默认虚拟服务器:
server {
listen 80;
server_name _;
return 404; # default
}
# now add your specific server
server {
listen 80;
server_name "~^(www.)?ucwebapi-uccore(\d{0,3})-(\d{0,3})\.testme\.net ucwebapi1.testme.net";
...
}
特定配置仅在您配置了默认配置时才有效。
@abcdn :你说得对,我不知道!
答案 2 :(得分:1)
尝试:
server_name "~^(www.)?ucwebapi-uccore(\d{0,3})-(\d{0,3})\.testme\.net" ucwebapi1.testme.net;
您的server_name
引号包含整行。什么可能被视为2个单独的条目,nginx插值为单个条目。