CH-J ToolsSSH-এর মাধ্যমে সার্ভার ব্যবস্থাপনা
মেনু

বান্ডেল করা HTTP ডায়াগনস্টিকস রানটাইম

ফাইল ডাউনলোড করুন

এই অনুবাদের ভাষাগত পর্যালোচনা চলছে। কোনো অংশ অস্পষ্ট হলে ইংরেজি মূল পাঠ-এর সঙ্গে মিলিয়ে নিন।

HTTP/1.1, HTTP/2 ও HTTP/3 একই বান্ডেল করা curl ক্লায়েন্ট ব্যবহার করে। macOS arm64 ও Linux x64 ব্যবহার করে curl 8.22.0, OpenSSL 3.5.9, nghttp2 1.70.0, ngtcp2 1.25.0 ও nghttp3 1.18.0। Windows x64 ব্যবহার করে curl.se-এর অফিশিয়াল curl-for-win 8.22.0_3 স্ট্যাটিক বিল্ড, LibreSSL 4.3.3 এবং একই HTTP লাইব্রেরি। সিস্টেম curl-এ ফিরে যাওয়া, রানটাইম ডাউনলোড বা প্রশাসকের অনুমতির প্রয়োজন নেই। Windows আপস্ট্রিমের পুনরুৎপাদনযোগ্য বিল্ড প্রণালী রয়েছে https://github.com/curl/curl-for-win/tree/9d77e31e -এ।

প্যাকেজিংয়ের আগে python3 scripts/native/build.py দিয়ে বিল্ড করুন (Windows: python scripts/native/build.py)। macOS/Linux-এর জন্য C/C++ টুল, CMake, Ninja, Perl, make ও pkg-config প্রয়োজন। সোর্সগুলো সংস্করণ ও আপস্ট্রিম SHA-256 অনুযায়ী scripts/native/dependencies.lock.json-এ নির্দিষ্ট করা আছে। স্ক্রিপ্টটি প্রতিটি ডাউনলোড যাচাই করে, তৃতীয় পক্ষের ট্রান্সপোর্ট লাইব্রেরি স্ট্যাটিকভাবে লিংক করে এবং HTTP2/HTTP3/SSL বৈশিষ্ট্য না থাকলে ব্যর্থ হয়। শুধু অপারেটিং সিস্টেমের লাইব্রেরি ডায়নামিক থাকে। Windows স্থানীয়ভাবে কম্পাইল করা Windows ট্রান্সপোর্ট স্ট্যাকের বদলে নির্দিষ্ট অফিশিয়াল বাইনারি আর্কাইভ ব্যবহার করে। বান্ডেল করা CA ফাইলের নিজস্ব নির্দিষ্ট হ্যাশ আছে; উপাদানগুলোর লাইসেন্স ও আপস্ট্রিম বিল্ডের উৎস-তথ্য রানটাইমের সঙ্গে থাকে।

ক্লায়েন্ট ও ট্রাস্ট স্টোর app.asar-এর বাইরে resources/native-runtime/<platform>-<arch>/-এ ইনস্টল হয়। প্রতিটি ডায়াগনস্টিক ব্যবহারের আগে উপাদানের হ্যাশ, আর্কিটেকচার ও এক্সিকিউটেবলের ক্ষমতা যাচাই করে। কনফিগারেশন ফাইল, প্রক্সি, TLS আস্থার এনভায়রনমেন্ট ওভাররাইড ও লাইব্রেরি ইনজেকশন ভেরিয়েবল বাদ দেওয়া হয়। curl চলে একটি পূর্ণ পাথ, বন্ধ শেল, যাচাইকৃত CA আস্থা এবং স্পষ্টভাবে রিজলভ করা IP ফ্যামিলি নিয়ে, কুকি ছাড়া, স্বয়ংক্রিয় রিডাইরেক্ট ছাড়া, এবং সীমিত আউটপুট ও সময়সহ। রিডাইরেক্ট অ্যাপ্লিকেশন যাচাই করে এবং আবার রিজলভ করে। 443 ছাড়া অন্য পোর্টে HTTPS সমর্থিত।

HTTP/3 --http3-only ব্যবহার করে এবং কেবল তখনই নিশ্চিত হয়, যখন HTTP সংস্করণ 3 ও সফল সার্টিফিকেট যাচাই জানিয়ে একটি স্থানান্তর সম্পূর্ণ হয়। 404-এর মতো HTTP ত্রুটি প্রতিক্রিয়াও প্রোটোকল নিশ্চিত করতে পারে। Alt-Svc একটি ঘোষণা, প্রমাণ নয়। QUIC টাইমআউট, সার্টিফিকেট ব্যর্থতা, DNS ব্যর্থতা, সংযোগ প্রত্যাখ্যান, অসামঞ্জস্যপূর্ণ প্রোটোকল ও উপাদানের ব্যর্থতা আলাদা থাকে। UDP টাইমআউটে সার্ভারের সমর্থন অযাচাইকৃত থাকে। QUIC হ্যান্ডশেকের সময় TCP সময় হিসেবে জানানো হয় না।

প্রতিটি পরিমাপ একটি আলাদা প্রসেস/সংযোগ শুরু করে। warm বিকল্পটি বান্ডেল করা ক্লায়েন্টের জন্য সংযোগ পুনর্ব্যবহারের দাবি করে না। এতে প্রোটোকল তুলনা সামঞ্জস্যপূর্ণ থাকে। রিপোর্টে রানটাইম সংস্করণ, ক্ষমতা, TLS যাচাই ও QUIC সময় থাকে, আর ইতিহাস/এক্সপোর্ট থেকে বডি, URL কোয়েরি ও প্রমাণীকরণ হেডার সরিয়ে ফেলা হয়।

ট্রান্সপোর্ট স্ট্যাক বা CA ট্রাস্ট স্টোর আপডেট করার সময় এই নির্দিষ্ট মানগুলো হালনাগাদ করুন এবং সমর্থিত প্রতিটি প্ল্যাটফর্মে আবার বিল্ড করুন। প্রকাশিত আর্টিফ্যাক্ট ও সোর্স স্ন্যাপশট অপরিবর্তনীয়।