যদি ইতিমধ্যে উপস্থিত না থাকে তবে অ্যাপাচে হেডার সেট করুন


13

আমার কাছে একটি প্রক্সি রয়েছে যা কিছু শিরোনাম ইনজেকশন দিচ্ছে তবে আমি এটি সংশোধন করতে চাই তাই এটি কেবল শিরোনামগুলি সেট করে যদি তারা ইতিমধ্যে উপস্থিত না থাকে:

<Location /api>    
    RequestHeader set MY_HEADER "value"

    ProxyPass http://127.0.0.1:8000/api
    ProxypassReverse http://127.0.0.1:8000/api
</Location>

এটা কি সম্ভব?

উত্তর:


5

অ্যাপাচি ২.৪..7, x86_64, উবুন্টু 14.04 এলটিএসে

আমি খুঁজে পেয়েছি যে এটি কাজ করে

RequestHeader setIfEmpty X-Forwarded-For "127.0.0.1"

সারা দিন কাজ করে। তবে যদি কেউ গতিশীল মান ব্যবহার করার চেষ্টা করে,

RequestHeader setIfEmpty X-Forwarded-For "%{REMOTE_ADDR}e"

কাজ করে না. আমি খুঁজে পেয়েছি যে মান সংগ্রহের জন্য আপনার মোড_উইরাইটের সহায়তা প্রয়োজন। আমার কনফিগারেশনটি এখন এটির মতো দেখায় এবং এটি কার্যকর হয়।

RewriteRule . - [E=noxff:%{REMOTE_ADDR}] RequestHeader setIfEmpty X-Forwarded-For "%{noxff}e"

আমি জানি এটি স্টোপিড, তবে এটি কাজ করে।


7

যেমন কিছু সম্পর্কে:

RequestHeader set X-My-Header "value" expr="req('X-My-Header')==''"

Expr = বাক্য গঠন সম্পর্কে আরও তথ্যের জন্য http://httpd.apache.org/docs/current/expr.html পরামর্শ করুন ।

সম্পাদনা করুন: অ্যাপাচি ২.২ এ আপনি এটি করতে সক্ষম হবেন:

SetEnvIf X-My-Header "" no_my_header
RequestHeader set X-My-Header "value" env=no_my_header

অ্যাপাচি ২.২.২৪-তে আমার কিছু সমস্যা হচ্ছে বলে মনে হচ্ছে। এটি কি কেবল একটি 2.4 জিনিস?
হোবোজিলা

অ্যাপাচি ২.২-তে উপস্থিত রয়েছে বলে মনে হয় না।
মাইকেল হ্যাম্পটন

উপরের অ্যাপাচি ২.২ এর জন্য আমার সম্পাদনাগুলি দেখুন।
এমএলু

2
কিছু কারণে এটি নিয়মিত প্রকাশ হিসাবে "" পছন্দ করে না তবে $ the কৌশলটি করেছে বলে মনে হয়েছে।
হোবোজিলা

4

অ্যাপাচি 2.4.7

Header setifempty Access-Control-Allow-Origin "*"

অ্যাপাচি নীচে 2.2.4

Header append Access-Control-Allow-Origin ""
Header edit Access-Control-Allow-Origin "^$" "*"
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.