إعادة كتابة الترويسات

يستطيع Chute إعادة كتابة ترويسات الطلبات والاستجابات قبل توجيهها إلى الخادم أو العميل.

يمكن تطبيق عدة قواعد على طلب واحد.

مثال:

[Header Rewrite]
^http://example\.com.* header-add DNT 1
^http://example\.com.* header-del Cookie
^http://example\.com.* header-replace User-Agent Unknown
^http://example\.com.* header-response-add X-Server rack3
^http://example\.com.* header-response-del X-Powered-By
^http://example\.com.* header-response-replace Server nginx

تتكون قاعدة إعادة الكتابة من 4 أجزاء: تعبير نمطي للرابط، نوع الإجراء، حقل الترويسة، والقيمة.

ملاحظة: يجب أن يطابق التعبير النمطي للرابط الرابط الكامل للطلب، وليس جزءاً منه فقط. يُستحسن عادةً أن تنتهي الأنماط بـ .* حتى تُطابَق الروابط بأي مسار وسلسلة استعلام.

ترويسات الطلب مقابل ترويسات الاستجابة

الإجراءات المسبوقة بـ header- تطبق على ترويسات الطلب (من العميل إلى الخادم). الإجراءات المسبوقة بـ header-response- تطبق على ترويسات الاستجابة (من الخادم إلى العميل).

كما تُقبل بادئة اتجاه اختيارية بأسلوب Surge هي http-request / http-response توضع قبل التعبير النمطي للرابط، مثل http-request ^http://example\.com.* header-replace Accept-Language en-us.

header-add

تعيين حقل ترويسة في ترويسة الطلب إلى القيمة المعطاة. إذا كان حقل الترويسة موجوداً بالفعل، تتم الكتابة فوقه.

مثال:

[Header Rewrite]
^http://example\.com.* header-add DNT 1

Before:
GET /index.html HTTP/1.1
Host: example.com
Connection: keep-alive
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_4) AppleWebKit/603.1.30 (KHTML, like Gecko) Version/10.1 Safari/603.1.30
Accept-Language: en-us
Accept-Encoding: gzip, deflate

After:
GET /index.html HTTP/1.1
Host: example.com
Connection: keep-alive
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_4) AppleWebKit/603.1.30 (KHTML, like Gecko) Version/10.1 Safari/603.1.30
Accept-Language: en-us
Accept-Encoding: gzip, deflate
DNT: 1

header-del

حذف سطر ترويسة من ترويسة الطلب.

مثال:

[Header Rewrite]
^http://example\.com.* header-del DNT

Before:
GET /index.html HTTP/1.1
Host: example.com
Connection: keep-alive
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_4) AppleWebKit/603.1.30 (KHTML, like Gecko) Version/10.1 Safari/603.1.30
Accept-Language: en-us
Accept-Encoding: gzip, deflate
DNT: 1

After:
GET /index.html HTTP/1.1
Host: example.com
Connection: keep-alive
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_4) AppleWebKit/603.1.30 (KHTML, like Gecko) Version/10.1 Safari/603.1.30
Accept-Language: en-us
Accept-Encoding: gzip, deflate

header-replace

استبدال قيمة ترويسة في ترويسة الطلب. إذا كان حقل الترويسة غير موجود، لا يحدث شيء.

مثال:

[Header Rewrite]
^http://example\.com.* header-replace DNT 1

Before:
GET /index.html HTTP/1.1
Host: example.com
Connection: keep-alive
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_4) AppleWebKit/603.1.30 (KHTML, like Gecko) Version/10.1 Safari/603.1.30
Accept-Language: en-us
Accept-Encoding: gzip, deflate
DNT: 0

After:
GET /index.html HTTP/1.1
Host: example.com
Connection: keep-alive
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_4) AppleWebKit/603.1.30 (KHTML, like Gecko) Version/10.1 Safari/603.1.30
Accept-Language: en-us
Accept-Encoding: gzip, deflate
DNT: 1

ملاحظة: header-replace يعمل فقط عندما يكون حقل الترويسة موجوداً بالفعل. لتعيين حقل ترويسة بغض النظر عن وجوده، استخدم header-add — فهو يكتب فوق أي حقل موجود بالاسم نفسه، لذا لا حاجة للجمع بين header-del و header-add.

S. Smart Rabbit LLC © All Rights Reserved            updated 2026-08-11 17:22:15

هذه الصفحة ترجمة للنسخة الإنجليزية. في حال وجود اختلاف، يُعتمد على النسخة الإنجليزية.

ملاحظة: التطبيق لا يدعم اللغة العربية حاليًا.

results matching ""

    No results matching ""