আমি কীভাবে ইউআরএল সাবস্ট্রিংয়ের উপর ভিত্তি করে হ্যাপ্রোক্সি রুট অনুরোধ করতে পারি?


14

দুটি লোড ব্যান্ডস সহ একটি লোড ব্যালেন্সার সেট আপ করা হয়।

ইউআরআই অনুরোধটি নীচের মত দেখাবে:

http://example.com/answers/submit
http://example.com/tag-02/answers/submit

ইউআরআই অনুরোধের বিন্যাসের উপর নির্ভর করে আমি কীভাবে হ্যাপ্রোক্সিটি কনফিগার করব যাতে অনুরোধটি ইউআরআই এর বিন্যাসের উপর নির্ভর করে দু'টি পিছনের দুটি প্রান্তে প্রেরণ করা হয়? অনুরোধগুলির মধ্যে কেবলমাত্র পার্থক্যটি হল /tag-02/অনুরোধের ইউআরআই।

এর জন্য কিছুটা ব্যাখ্যা সহ একটি হাইপ্রোক্সি কনফিগারেশন ফাইল অনেক প্রশংসা হবে, যেহেতু আমি হ্যাপ্রোক্সিতে নতুন।

উত্তর:


13

আপনি এসিএল ব্যবহার করতে চান :

backend be1 # this is your default backend
  ...
backend be2 # this is for /tag-02 requests
  ...

frontend fe
  ...
  default_backend be1
  acl url_tag02 path_beg /tag-02
  use_backend be2 if url_tag02

HAProxy কনফিগারেশন গাইডের সেকশন 7 এ এসিএলগুলিতে বিশদ রয়েছে তবে এসিএলগুলিuse_backend কী করতে হবে তা জানতে আপনাকে গাইডের 4 ধারায় লুকিয়ে থাকা যাদু জাদুটি জানতে হবে।


1
ঘোষিত এসিএল স্টাইলটি সাধারণত বেশি পঠনযোগ্য এবং পুনরায় ব্যবহারযোগ্য, আপনি যদি পছন্দ করেন তবে এসিএল ঘোষণাটি use_backendনিজেই নির্দেশের মধ্যে অন্তর্ভুক্ত করতে পারেন use_backend be2 if { path_beg /tag-02 }
womble

0

উপরের উত্তরের আরও ভাল উদাহরণ সরবরাহ করার জন্য নীচে একটি কনফিগারেশন উদাহরণ রয়েছে।

frontend https-in
   bind *:443 ssl crt /etc/ssl/server.pem
   mode http
   redirect scheme https if !{ ssl_fc }

   acl uri_help path_beg /help
   use_backend help if uri_help

backend help
    balance     roundrobin
    server      help yourbackendserver.com check
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.