এক 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.