Nginx-এর সাথে HTTP/2 সামঞ্জস্যপূর্ণ রিভার্স প্রক্সি বাস্তবায়ন

3 min

language: ja bn en es hi pt ru zh-cn zh-tw

নমস্কার, আমি অযোগ্য।
সম্প্রতি প্রকাশিত নিবন্ধটি HTTP/2 সমর্থন করার জন্য সংগ্রাম করছে...

$ curl https://soulminingrig.com/
curl: (92) Invalid HTTP header field was received: frame type: 1, stream: 1, name: [upgrade], value: [h2,h2c]

এবং তারপর...

HTTP/2 কী - JPNIC

আপগ্রেড শুধুমাত্র http-এর ক্ষেত্রে ব্যবহার করা যেতে পারে।

এবং, যেহেতু Nginx এবং Apache-এর মধ্যে সংযোগ HTTP1.1-এর মাধ্যমে করা হয়েছে, তাই এই হেডার তথ্য অন্তর্ভুক্ত ছিল, এবং HTTPS স্ট্যান্ডার্ড HTTP/2 কমিউনিকেশনে curl ব্যবহার করলে একটি ত্রুটি দেখাচ্ছিল।
সুতরাং, আমি ভাবলাম, "যদি এটি মুছে ফেলা হয় তবে কি কাজ করবে?" এবং চেষ্টা করে দেখলাম, এটি কাজ করেছে।

মোটামুটিভাবে বলতে গেলে, যেহেতু HTTP যোগাযোগের সময় হেডার তথ্য সহ বিতরণ করা হচ্ছিল, তাই এটিকে HTTP2-এর সাথে সামঞ্জস্যপূর্ণ করলে এটি কাজ করবে, তাই না? এমনই মনে হচ্ছে।
জাপানি তথ্যের জন্য, আমি মনে করি NIC-এর নিবন্ধটি সবচেয়ে সহজবোধ্য।

Nginx কনফিগারেশন

মনে হচ্ছে এটি location ডিরেক্টিভে সেট করে Upgrade হেডার বাদ দিলেই যথেষ্ট।
এটি অপ্রয়োজনীয় হতে পারে, তবে যেহেতু এটি HTTP যোগাযোগ, তাই আমি এটি স্পষ্টভাবে উল্লেখ করেছি।

    proxy_hide_header Upgrade;
    proxy_http_version 1.1;

এখন curl!

এটি দিয়ে curl -I করলে...

$ curl -I https://soulminingrig.com/
HTTP/2 200 
server: nginx/1.27.0
date: Thu, 21 Nov 2024 22:44:47 GMT
content-type: text/html
content-length: 15375
vary: Accept-Encoding
last-modified: Thu, 21 Nov 2024 03:45:14 GMT
etag: "3c0f-627641819d3e9"
accept-ranges: bytes
vary: Accept-Encoding
content-security-policy: upgrade-insecure-requests
alt-svc: h3=":443"; ma=86400
x-content-type-options: nosniff

এটি কাজ করেছে!!!
আজ আমার বিদায়ী পার্টি আছে, তাই আমি নিশ্চিন্তে অ্যালকোহল পান করতে পারব!
তাহলে আবার দেখা হবে। শুভেচ্ছা রইল।

Related Posts