现在想匹配一堆 co-{hash}.test.com。请问如何写 server_name 的正则?
需要将匹配到的 hash 重定向到 demo.test.com/hash/(这里在 location 重写一下就可以了吧?);或者将 root 目录指向 /home/enterprise/$hash。
现在的问题就是,匹配不到 co-{hash}.test.com 这个域名中的 hash 值。
附上 server 的 conf:
server {
listen 80;
server_name ~^co-(?<hash>.+)?\.test\.com$;
#root /home/enterprise/;
root /home/enterprise/$hash;
access_log logs/enterprise.access.log;
location ~ \.(gif|jpg|png|htm|html|css|js|flv|ico|swf)(.*) {
expires 30d;
}
error_page 404 /404.html;
location ~ \.php$ {
deny all;
}
location ~ /\.ht {
deny all;
}
}
百度 / Google 出来的全都是官网的 server_name 的配置,一字不差的翻译过来。