技术解析
现在想匹配一堆 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-(?.+)?\.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;
lo国外服务器cation ~ \.php$ {
deny all;
}
location ~ /\.ht {
deny all;
}
}
百度 / Google 出来的全都是官网的 server_name
的配置,一字不差的翻译过来。