Saya memiliki beberapa "server" blok di nginx.conf saya. Dokumentasi tampaknya salah tentang urutan pencocokan server_name.
Conf saya terlihat seperti:
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
}
Saya mencoba mencari tahu mengapa permintaan dengan host = www.sub.domain.com pergi ke tempat yang benar (server kedua), ketika dokumentasi menunjukkan itu harus pergi ke server pertama.
Dokumentasi Nginx menunjukkan bahwa blok server dicentang "dalam urutan" untuk kecocokan, artinya setiap permintaan dengan host * .sub.domain.com harus ditangkap oleh server pertama, bukan server kedua. ( http://wiki.nginx.org/HttpCoreModule#server_name )
Juga, * wildcard cocok dengan sejumlah bagian subdomain, jadi * .domain.com cocok dengan www.sub.domain.com. ( http://nginx.org/en/docs/http/server_names.html#wildcard_names )
Jika dokumentasi ini salah, apa urutan pencocokan yang sebenarnya?