এটি এইচটিটিপি রাখার বিষয়ে, যা একক টিসিপি সেশনের মাধ্যমে (এবং, এসএসএল, একটি একক এসএসএল সেশন) মাধ্যমে একাধিক সংস্থান অনুরোধের অনুমতি দেয়। এটি কোনও এসএসএল সাইটের পারফরম্যান্সের পক্ষে অত্যন্ত গুরুত্বপূর্ণ, যেমনটি জীবিত রাখে না, প্রতিটি অনুরোধ করা সংস্থার জন্য একটি এসএসএল হ্যান্ডশেক প্রয়োজন।
সুতরাং, এখানে উদ্বেগ হ'ল ক্লায়েন্ট থেকে ব্যাকএন্ড সার্ভারের সমস্ত পথে একটি বড় রাখার ব্যবস্থা রয়েছে। এটি পারফরম্যান্সের জন্য একটি গুরুত্বপূর্ণ বিষয় এবং আধুনিক এইচটিটিপি সার্ভারগুলির পক্ষে অবশ্যই এটি নেওয়া হয়েছে, তবে এই প্যাচটি বলে যে এটি এটি সমর্থন করে না। আসুন খতিয়ে দেখা যাক ..
একটি রাখার অধিবেশন একের পর এক আরও অনুরোধ - একবার সার্ভারের একটি অনুরোধের প্রতিক্রিয়া শেষ হয়ে গেলে, সার্ভার FIN
টিসিপি অধিবেশন শেষ করতে কোনও প্যাকেট প্রেরণ করে না ; ক্লায়েন্ট সহজেই হেডারগুলির একটি ব্যাচ পাঠাতে পারে।
সেই প্যাচটি কী করছে তা বোঝার জন্য, এখানে রাখুন-জীবিত কথোপকথনের একটি উদাহরণ:
ক্লায়েন্ট:
GET / HTTP/1.1
Connection: keep-alive
Host: domain.com
...
সার্ভার:
HTTP/1.1 200 OK
Content-Type: text/html; charset=UTF-8
Server: Apache
Content-Length: 34
.... (other headers)
<html><head>content!</head></html>
এখানেই যেখানে অ-সংরক্ষণে-জীবিত সংযোগ বন্ধ হবে। তবে, বেঁচে থাকতে ক্লায়েন্টকে কেবল অন্য একজনকে গুলি চালানোর অনুমতি দেয়:
GET /images/some/image.on.the.page.jpg HTTP/1.1
Connection: keep-alive
Host: domain.com
...
প্রক্সিংয়ে ক্লায়েন্ট আইডির জন্য, কয়েকটি X-Forwarded-For
ক্লায়েন্টের অনুরোধে কিছু বিপরীত প্রক্সি হেডারে যুক্ত করতে পারে । লগিং এবং অন্যান্য অ্যাপ্লিকেশন প্রয়োজনীয়তার ক্ষেত্রে সতর্কতার জন্য অনুরোধটি আপস্ট্রিম সার্ভারকে জানিয়েছে যেখানে (বিপরীত প্রক্সি আইপি থেকে শুরু করা প্রতিটি অনুরোধের পরিবর্তে) অনুরোধটি এসেছে।
X-Forwarded-For
হেডার প্রতিটি এবং সক্রিয়-রাখুন সংযোগ মাধ্যমে পাঠানো হিসাবে পূর্ণ হেডার প্রতিটি সময় পাঠানো হয় যে ক্লায়েন্ট সংস্থান অনুরোধ মধ্যে ইনজেকশনের করা প্রয়োজন; X-Forwarded-For
হেডার হ্যান্ডলিং এবং এর মধ্যে অনুবাদ "সত্য" অনুরোধ আইপি প্রতি-অনুরোধে সম্পন্ন হয়, প্রতি-টিসিপি-রাখুন না-জীবিত-সেশন, ভিত্তিতে। আরে, সম্ভবত সেখানে দুর্দান্ত কিছু বিপরীত প্রক্সি সফ্টওয়্যার রয়েছে যা একাধিক ক্লায়েন্টের পরিষেবার অনুরোধগুলির জন্য একক রাখে-জীবিত সেশন ব্যবহার করে।
এই প্যাচটি এখানে ব্যর্থ হয়।
সেই সাইটের প্যাচটি প্রবাহে এইচটিটিপি শিরোনামের প্রথম সেটটির শেষের জন্য টিসিপি সেশনটির বাফারটি পর্যবেক্ষণ করে এবং নতুন শিরোলেখটিকে that প্রথম সেটটির শিরোনাম শেষ হওয়ার পরে প্রবাহে ইনজেক্ট করে। এটি হয়ে যাওয়ার পরে, এটি X-Forwarded-For
কাজটি বিবেচনা করে এবং নতুন সেট শিরোনামের সমাপ্তির জন্য স্ক্যান করা বন্ধ করে দেয়। এই পদ্ধতির পরবর্তী অনুরোধগুলির মাধ্যমে আগত সমস্ত ভবিষ্যতের শিরোনাম সম্পর্কে কোনও সচেতনতা নেই।
সত্যিই তাদের দোষ দিতে পারে না; এর স্ট্রিমের বিষয়বস্তু পরিচালনা ও অনুবাদ করতে স্টানেলটি আসলে নির্মিত হয়নি।
এটি আপনার সিস্টেমে যে প্রভাব ফেলবে তা হ'ল চালিয়ে যাওয়ার প্রবাহের প্রথম অনুরোধটি X-Forwarded-For
শিরোনামটি সঠিকভাবে ইনজেকশন দেবে এবং পরবর্তী সমস্ত অনুরোধগুলি ঠিক কাজ করবে - তবে তাদের শিরোনামটি থাকবে না won't
অন্য কোনও শিরোনামের ইনজেকশন প্যাচ না থাকলে যতক্ষণ না সংযোগ প্রতি একাধিক ক্লায়েন্টের অনুরোধগুলি পরিচালনা করতে পারে (বা স্ট্যাক ওভারফ্লোতে আমাদের বন্ধুদের সহায়তায় এটি মুছে ফেলা যায়), আপনার এসএসএল সমাপ্তির জন্য অন্যান্য বিকল্পগুলি দেখার প্রয়োজন হতে পারে।