Tôi có nhiều khối "máy chủ" trong nginx.conf của mình. Tài liệu có vẻ sai về thứ tự kết hợp server_name diễn ra.
Conf của tôi trông giống như:
server {
listen 80
server_name domain.com *.domain.com
# do stuff
}
server {
listen 80
server_name sub.domain.com *.sub.domain.com
# do something else
}
Tôi đang cố gắng tìm hiểu tại sao các yêu cầu với máy chủ = www.sub.domain.com sẽ đến đúng nơi (máy chủ thứ hai), khi tài liệu cho biết nó sẽ đến máy chủ đầu tiên.
Tài liệu Nginx chỉ ra rằng các khối máy chủ được kiểm tra "theo thứ tự" cho phù hợp, nghĩa là mọi yêu cầu với máy chủ * .sub.domain.com nên được máy chủ thứ nhất bắt giữ, không phải máy chủ thứ hai. ( http://wiki.nginx.org/HttpCoreModule#server_name )
Ngoài ra, ký tự đại diện * khớp với bất kỳ số phần tên miền phụ nào, vì vậy * .domain.com khớp với www.sub.domain.com. ( http://nginx.org/en/docs/http/server_names.html#wildcard_names )
Nếu tài liệu này sai, thứ tự khớp thực tế là gì?