এনগিনেক্সে $ হোস্ট এবং $ http_host এর পার্থক্য কী


উত্তর:


217

$hostকোর মডিউলটির একটি পরিবর্তনশীল ।

$ হোস্ট

এই ভেরিয়েবলটি অনুরোধের শিরোনামে হোস্টের অনুরোধ বা সার্ভারের নাম অনুরোধটি প্রক্রিয়া করে যদি হোস্ট শিরোনাম উপলব্ধ না হয় equal

এই পরিবর্তনশীলটির ক্ষেত্রে $ http_host এর থেকে পৃথক মান থাকতে পারে: 1) যখন হোস্ট ইনপুট শিরোনামটি অনুপস্থিত থাকে বা খালি মূল্য থাকে, $ হোস্টটি সার্ভার_নামের নির্দেশকের মানের সমান হয়; 2) যখন হোস্টের মানটিতে পোর্ট নম্বর থাকে, $ হোস্টটি সেই পোর্ট নম্বরটি অন্তর্ভুক্ত করে না। $ হোস্টের মান সর্বদা 0.8.17 থেকে ছোট হাতের অক্ষরে থাকে।

$http_hostএকই মডিউলটিরও একটি পরিবর্তনশীল তবে এটি আপনাকে সেই নামের সাথে পাবেন না কারণ এটি সাধারণভাবে $http_HEADER( রেফ ) হিসাবে সংজ্ঞায়িত করা হয়েছে ।

$ http_HEADER

HTTP রিকোয়েস্ট শিরোনাম HEADER এর মান যখন ছোট হাতের সাথে রূপান্তরিত হয় এবং 'ড্যাশ' দিয়ে 'আন্ডারস্কোর' এ রূপান্তরিত হয়, যেমন $ http_user_agent, $ http_referer ...;


সারমর্ম:

  • $http_hostসর্বদা HTTP_HOSTঅনুরোধ শিরোনাম সমান ।
  • $hostসমান $http_host, ছোট হাতের এবং পোর্ট নম্বর ছাড়াই (উপস্থিত থাকলে) ব্যতীত যখন HTTP_HOSTঅনুপস্থিত থাকে বা খালি মান হয় । সেক্ষেত্রে, $hostমান সমান server_nameসার্ভার অনুরোধ প্রক্রিয়া এর নির্দেশ।

57
$ হোস্টটি বিশেষত প্রথমটিserver_name যা বর্তমান সার্ভার ব্লকে সংজ্ঞায়িত হয়। আপনার যদি একাধিক server_nameগুলি থাকে তবে কেবল প্রথমটি উপস্থিত হবে।
জোনাথন ভানাসকো

4
সত্য। প্রকৃতপক্ষে, এটি সংজ্ঞায়িত করা বেশ সাধারণ: সার্ভার_নাম উদাহরণ.কম www.example.com;
glarrain

আপনার একাধিক server_nameনির্দেশিকাও থাকতে পারে। যদি আপনার প্রথমটিতে একটি রেজেেক্স হয়, তবে এটি হয়ে যায় $hostএবং পুনর্লিখনের নিয়মের সময় সমস্ত প্রকার কুৎসিত জিনিসগুলি ঘটতে পারে।
জোনাথন ভানাসকো

5
$server_nameভেরিয়েবলটি কি server_nameএকাধিক server_nameনির্দেশিকা থাকলে নির্দেশকের মান বা প্রকৃত সার্ভারের নামের সমতুল্য হয় ?
সিএমসিডিগ্রাগনকাই

1
@CMCDragonkai $server_nameসর্বদা সার্ভার_নামের নির্দেশের সাথে নির্দিষ্ট করা প্রথম মানের সমান। উদাহরণস্বরূপ, সঙ্গে server_name example.com one.example.com two.example.com;, $server_nameসবসময় হতে হবে "example.com", যা হোস্ট ব্যবহারকারী নির্দিষ্ট করেছে নির্বিশেষে । আসলে, আপনার যদি এটি না থাকে default_serverতবে হোস্টটি সম্পূর্ণ আলাদা কিছু হতে পারে (যেমন ..org)।
এটিলিফ
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.