मेरे nginx.conf में कई "सर्वर" ब्लॉक हैं। दस्तावेज़ीकरण उस आदेश के बारे में गलत लगता है जिसमें server_name मिलान होता है।
मेरा आत्मविश्वास कुछ इस तरह है:
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
}
मैं यह पता लगाने की कोशिश कर रहा हूं कि होस्ट = www.sub.domain.com के साथ अनुरोध सही जगह (दूसरा सर्वर) पर क्यों जा रहा है, जब प्रलेखन इंगित करता है कि इसे पहले सर्वर पर जाना चाहिए।
Nginx प्रलेखन इंगित करता है कि मैचों के लिए सर्वर ब्लॉक "क्रम में" चेक किए गए हैं, जिसका अर्थ है कि मेजबान * .sub.domain.com के साथ किसी भी अनुरोध को पहले सर्वर द्वारा पकड़ा जाना चाहिए, न कि दूसरे सर्वर द्वारा। ( http://wiki.nginx.org/HttpCoreModule#server_name )
इसके अलावा, * वाइल्डकार्ड किसी भी संख्या में उपडोमेन भागों से मेल खाता है, इसलिए * .domain.com www.sub.domain.com से मेल खाता है। ( http://nginx.org/en/docs/http/server_names.html#wildcard_names )
यदि यह दस्तावेज़ गलत है, तो वास्तविक मिलान आदेश क्या है?