এক nginx থেকে অন্যটিতে পুনর্নির্দেশ করা হচ্ছে


10

এনজিআইএনএক্স এর সাথে আমি দুটি সার্ভার (এ এবং বি) পেয়েছি। সার্ভার এ পুরানো সাইট পরিবেশন করছে এবং সার্ভার বি একটি নতুন সাইট পরিবেশন করছে। আমি আমার ডিএনএস আপডেট করেছি তবে এটি বেশ ধীর: আমার অফিসে আমি এখনও আমার পুরানো সাইটটি দেখতে পাচ্ছি:

subdomain.site.com

আমি কীভাবে এই নির্দিষ্ট সাবডোমেনের জন্য সার্ভার বি থেকে সমস্ত অনুরোধগুলি সার্ভার বি তে পুনর্নির্দেশ করতে পারি?

এখন তারা দুজনেই এনজিআইএনএক্সে এটি পরিচালনা করে:

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

উত্তর:


14

যেহেতু তারা উভয়ই একই সার্ভার_নাম ব্যবহার করছে, আপনি একটি সাধারণ পুনর্নির্দেশ করতে পারবেন না।

পুরানো সার্ভারে নিম্নলিখিত পংক্তির প্রান্তে আপনি সম্ভবত কিছু প্রক্সি করতে পারেন:

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;
  }
}

সুতরাং, মূলত, পুরানো সার্ভারটি কনফিগার করুন যাতে এটি নতুন সার্ভারে সমস্ত অনুরোধগুলি পাস করে। অবশ্যই, আপনার ক্লায়েন্ট_ম্যাক্স_দেহী_সাইজ এবং যা কিছু প্রয়োজন তার জন্য যে কোনও কনফিগারেশন রাখুন।


এটি কীভাবে এসএসএল ব্যবহার করে করা যেতে পারে? প্রক্সি মেশিনের কি এসএসএল শংসাপত্রের পাশাপাশি আপস্ট্রিম সার্ভারের প্রয়োজন?
আর্থলেলন

@earthmeLon মূল প্রশ্নে, এই প্রক্সিটি ডিএনএস আপডেটের জন্য একটি অস্থায়ী ব্যবস্থা ছিল। সেক্ষেত্রে নতুন এবং পুরানো উভয় সার্ভারেরই এসএসএল শংসাপত্র থাকবে। প্রবাহের ক্ষেত্রে, আপনি এসএসএল বা প্লেইন HTTP- র মাধ্যমে সংযোগ করতে পারেন; যেহেতু আপনি উভয় বাক্স নিয়ন্ত্রণ করেন, তাই এটি আপনার পছন্দ অনুযায়ী হবে।
সিজেসি
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.