एक नग्नेक्स से दूसरे में पुनर्निर्देशित करना


10

मुझे NGINX के साथ दो सर्वर (ए और बी) मिले हैं। सर्वर ए पुरानी साइट की सेवा कर रहा है और सर्वर बी एक नई साइट की सेवा दे रहा है। मैंने अपना DNS अपडेट किया है, लेकिन यह काफी धीमा है: अपने कार्यालय में मैं अभी भी अपनी पुरानी साइट देखता हूं:

subdomain.site.com

मैं सर्वर ए से इस बी सबडोमेन के लिए सर्वर बी के सभी अनुरोधों को कैसे पुनर्निर्देशित कर सकता हूं?

अब वे दोनों NGINX में इसे संभाले हुए हैं:

server {
  listen 80;
  server_name subdomain.site.ru;
  root /var/www/subdomain/public;
  passenger_enabled on;
}

जवाबों:


14

चूंकि वे दोनों एक ही server_name का उपयोग कर रहे हैं, आप एक साधारण पुनर्निर्देशन नहीं कर सकते।

आप शायद पुराने सर्वर पर निम्नलिखित की तर्ज पर, हालांकि, किसी प्रकार का प्रॉक्सी कर सकते हैं:

upstream newserver {
  server 172.16.0.1:80;  # this is new server, by IP address
}

server {
  listen 80;
  server_name subdomain.site.ru;
  location / {
    proxy_set_header Host $host;
    proxy_pass http://newserver;
  }
}

इसलिए, मूल रूप से, पुराने सर्वर को कॉन्फ़िगर करें ताकि यह नए सर्वर के सभी अनुरोधों को पारित कर दे। बेशक, जो भी विन्यास आपको क्लाइंट_मैक्स_बॉडी_साइज़ और उस सब के लिए चाहिए।


यह एसएसएल का उपयोग करके कैसे किया जा सकता है? क्या प्रॉक्सी मशीन को ssl सर्टिफिकेट के साथ-साथ अपस्ट्रीम सर्वर की भी जरूरत है?
EarthmeLon

@earthmeLon मूल प्रश्न में, यह प्रॉक्सी DNS अपडेट के लिए एक अस्थायी उपाय था। उस स्थिति में, नए और पुराने दोनों सर्वरों में SSL प्रमाणपत्र होगा। अपस्ट्रीम के मामले में, आप SSL या सादे HTTP पर कनेक्ट कर सकते हैं; चूंकि आप दोनों बक्से को नियंत्रित करते हैं, यह आपकी प्राथमिकता पर निर्भर करेगा।
ccc
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.