সুতরাং, আপনি nginx
ক্লায়েন্টের কাছ থেকে ব্যাকএন্ড সার্ভারে একটি অনুরোধ প্রক্সি করতে চান এবং তারপরে, ক্লায়েন্টকে ব্যাকএন্ডের জবাব ফেরানোর আগে, অন্য বাহ্যিক প্রসেসরের মাধ্যমে এই জাতীয় উত্তরটি পাইপ করবেন?
আমি মনে করি না আপনি nginx
বর্তমানে ইগর সিসোয়েভ এবং এনগিনেক্স, ইনক দ্বারা সরবরাহিত কোনও অফিসিয়াল মডিউল দিয়ে উপরেরটি করতে পারেন । সর্বনিকটবর্তী বস্তু যে প্রতিক্রিয়া শরীরের পরিবর্তনের জন্য উপলব্ধ কয়েকটি ফিল্টার মডিউল যা nginx সঙ্গে একসঙ্গে আসা, কিন্তু ডিফল্ট ভাবে বন্ধ আছে সহ add_before_body
, add_after_body
এবং sub_filter
নির্দেশনা:
http://nginx.org/en/docs/http/ngx_http_addition_module.html
http://nginx.org/en/docs/http/ngx_http_sub_module.html
এছাড়াও, সম্ভবত gzip on;
আপনি কি পরিবর্তে আসলে চান?
http://nginx.org/en/docs/http/ngx_http_gzip_module.html
অথবা, সম্ভাব্য, আপনি যদি জানেন perl
এবং একটি সম্পূর্ণরূপে পরীক্ষামূলক মডিউল চালানোর জন্য ইচ্ছুক, এম্বেডিং কটাক্ষপাত করা perl
মধ্যে nginx
একটি সরকারী nginx মডিউল যে ডিফল্টরূপে বন্ধ পরিণত এবং (কিছুটা স্পষ্টত) সম্পূর্ণভাবে পরীক্ষামূলক সঙ্গে:
http://nginx.org/en/docs/http/ngx_http_perl_module.html
অন্য বিকল্পটি হ'ল একধরনের ফাস্ট-সিজিআই সেটআপ ব্যবহার করা যাতে আপনি অনুরোধগুলি পুনর্নির্দেশ করবেন, যেখানে আপনার ফাস্ট-সিজিআই স্ক্রিপ্টটি ব্যাকএন্ডে অনুরোধ করবে এবং তারপরে ফিরে আসার আগে চূড়ান্ত প্রক্রিয়াজাতকরণ হবে final উত্তরগুলি ক্যাশে Nginx এ ফিরে এবং ব্যবহারকারীর কাছে ফিরে আসে।
রয়েছে proxy_set_body
(কিন্তু কোন fastcgi_set_body
এখনো), অনুরোধের শরীর পরিবর্তন করতে (যেমন থেকে আমরা কী ক্লায়েন্ট সরবরাহকৃত করেছে), কিন্তু সাড়া শরীর পেতে কোনো সমতুল্য নির্দেশ বা পরিবর্তনশীল হবে বলে মনে হচ্ছে না, আদেশ প্রদান করিতে করার জন্য একরকম কোনও পোস্ট-প্রসেসরের কাছে পরবর্তী অনুরোধে। যাই হোক না কেন, ফিল্টার মডিউলটি সম্ভবত আপনি একটি পোস্ট-প্রসেসরের জন্য চান।
(এছাড়াও, আপনি কি বুঝতে পেরেছেন যে fork
নিয়মিত নির্বাহীর মাধ্যমে আইএনপি এবং পাইপ জবাব দেওয়ার একটি নির্লজ্জ পদ্ধতির অতিরিক্ত অতিরিক্ত ধীর হতে চলেছে, তাই না?)
সংক্ষেপে বলতে গেলে , আমার মনে gzip on;
হয় ঠিক আপনি যা খুঁজছেন তা হ'ল; অন্যথায়, আপনি যদি মূল ওয়েবপ্যাপটি সংশোধন করতে পারেন তবে আমার মনে হয় আপনার সবচেয়ে ভাল বেট হতে পারে ওয়েব অ্যাপের মধ্যেই কোনও প্রকার পোস্ট প্রসেসর ইনস্টল করা, যা সামগ্রিকভাবে পরবর্তী সহজ সমাধানের মতো মনে হবে। সম্ভাব্যভাবে আপনি ফিল্টার মডিউলগুলি কীভাবে প্রয়োগ করা হয় তা খতিয়ে দেখতে পারেন , যেমন উল্লিখিত এনজিএক্স_এইচটিটিপি_ড্যাশন_ফিল্টার_মডিউল.সি, আরও কিছু স্পষ্টত-প্রাসঙ্গিক ফিল্টার যেমন এনজিএক্স_http_gzip_filter_module.c, এবং আপনার নিজের এমবেডেড ফিল্টার মডিউলটি প্রয়োগ করে। বা আপনার জন্য এটি লিখতে Nginx, Inc. ভাড়া করুন! তবে, গুরুত্ব সহকারে, gzip on;
ঠিক কাজ করে এবং সম্ভবত কোনও ঝামেলা, কর্মক্ষমতা বা স্থিতিশীলতার সমস্যা ছাড়াই আপনাকে আরও ভাল ফলাফল দেওয়ার সম্ভাবনা রয়েছে এবং এটি ইতিমধ্যে ডিফল্টরূপে সংকলিত হয়েছে, আপনাকে কেবল এটি সক্ষম করতে হবেnginx.conf
।