在 nginx.conf 里面配置多个 server:
在开始处理一个 http 请求时,nginx 会取出 header 头中的 host,与 nginx.conf 中每个 server 的 server_name 进行匹配,以此决定到底由哪一个 server 块来处理这个请求
里面的 server_name:用于配置基于名称的虚拟主机
除了完全匹配,还可以以通配符:
1、以*通配符开始的字符串:
1
|
server_name *.domain.com;
|
2、以*通配符结束的字符
1
|
server_name www.*;
|
3、匹配正则表达式
1
|
server_name ~^(?.+).domain.com$;
|
1
2
3
4
5
6
7
8
9
10
11
12
13
|
server {
listen 80 default_server;
server_name www.123.com;
root /home/web1 ;
location / {
}
error_page 404 /404 .html;
location = /40x .html {
}
error_page 500 502 503 504 /50 .xhtml;
location = /50x .html {
}
}
|
1
2
3
4
5
6
7
8
9
10
11
12
|
server {
server_name www.abc.com;
root /home/web2 ;
location / {
}
error_page 404 /404 .html;
location = /40x .html {
}
error_page 500 502 503 504 /50x .html;
location = /50x .html {
}
}
|
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。
原文链接:https://segmentfault.com/a/1190000016371837