রিভার্স প্রক্সি ও URL base
সেটআপ
আপনার রিভার্স প্রক্সির পেছনে HolyArrs-কে https://home.example/holyarrs-এর মতো একটি ঠিকানায় রাখুন।
রিভার্স প্রক্সি হলো আপনার অ্যাপগুলোর সামনে থাকা ওয়েব সার্ভার, যা প্রতিটি ঠিকানাকে সঠিক কন্টেইনারে পাঠায়। URL base হলো সেই পাথ, যার নিচে HolyArrs থাকে।
পাথ ঠিক করুন
পাথ ঠিক করুন-এর লিংক-
আপনার Compose ফাইলে পাথটি যোগ করুন:
services:holyarrs:environment:- HOLYARRS_URL_BASE=/holyarrs -
কন্টেইনার রিস্টার্ট করুন।
-
প্রক্সির উদাহরণ থেকে একটি প্রক্সি নিয়ম যোগ করুন।
-
https://home.example/holyarrs/খুলুন। আপনি সাইন ইন পেজ দেখতে পাবেন। Settings > This app (সেটিংস > এই অ্যাপ) ব্যবহৃত পাথটি দেখায়।
বিকল্প
বিকল্প-এর লিংকপাথ কোথায় ঠিক করবেন
পাথ কোথায় ঠিক করবেন-এর লিংক| কোথায় | কখন কার্যকর হয় |
|---|---|
HOLYARRS_URL_BASE |
চালু হওয়ার সময়। অন্যগুলোর চেয়ে এটিই প্রাধান্য পায়। |
-url-base /holyarrs ফ্ল্যাগ |
চালু হওয়ার সময়, যখন ভেরিয়েবলটি সেট নেই। |
| Settings > This app | পরের চালুর সময়, শুধু যখন ভেরিয়েবল ও ফ্ল্যাগ দুটোই সেট নেই। |
প্রক্সির উদাহরণ
প্রক্সির উদাহরণ-এর লিংকnginx-proxy-manager। আপনার ডোমেইনের জন্য একটি proxy host বানান, তারপর একটি কাস্টম লোকেশন যোগ করুন:
- Location:
/holyarrs - Forward hostname
holyarrs, পোর্ট6262। শেষে স্ল্যাশ দেবেন না, নইলে পাথ কেটে যায়। - ওই লোকেশনের গিয়ার বক্সে:
proxy_set_header Host $host;proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;proxy_buffering off;proxy_read_timeout 1h;Traefik। StripPrefix middleware যোগ করবেন না।
labels: - traefik.enable=true - traefik.http.routers.holyarrs.rule=Host(`home.example`) && PathPrefix(`/holyarrs`) - traefik.http.services.holyarrs.loadbalancer.server.port=6262Caddy। handle ব্যবহার করুন। handle_path পাথ কেটে দেয়।
home.example { handle /holyarrs* { reverse_proxy holyarrs:6262 { flush_interval -1 } }}হোস্ট নাম ও প্রক্সির ঠিকানা
হোস্ট নাম ও প্রক্সির ঠিকানা-এর লিংক- লোকেরা হোস্ট নাম দিয়ে HolyArrs-এ এলে সেটি
HOLYARRS_ALLOWED_HOSTS-এ যোগ করুন। - প্রক্সি
X-Forwarded-Forযোগ করলে প্রক্সির ঠিকানাHOLYARRS_TRUSTED_PROXIES-এ যোগ করুন। এটি না থাকলে সাইন ইন বুঝতে পারে না কে আপনার বাসার নেটওয়ার্কে আছে।
কাজ না করলে
কাজ না করলে-এর লিংক| লক্ষণ | কারণ | সমাধান |
|---|---|---|
| প্রতিটি পেজ not found বলছে | প্রক্সি পাথ কেটে দিচ্ছে | কাটার সেটিং বা শেষের স্ল্যাশ সরিয়ে দিন। |
| লাইভ আপডেট আসছে না | প্রক্সি রেসপন্স বাফার করছে | বাফারিং বন্ধ করুন (proxy_buffering off, flush_interval -1)। |
| সেভ করা পাথ আপনাকে আটকে দিয়েছে | সেভ করা পাথ ভুল | এটি উপেক্ষা করতে HOLYARRS_URL_BASE=/ দিয়ে চালু করুন। |
| সাইন ইন আপনাকে নেটওয়ার্কের বাইরের কেউ ভাবছে | প্রক্সি বিশ্বস্ত নয় | X-Real-IP ও X-Forwarded-For পাঠান, আর HOLYARRS_TRUSTED_PROXIES সেট করুন। |
আরও সমাধান: সমস্যার সমাধান।
বিশেষজ্ঞদের জন্য
বিশেষজ্ঞদের জন্য-এর লিংকপাথের নিয়ম
- অনুমোদিত অক্ষর: অক্ষর, সংখ্যা,
-,_,.আর/।..বা//চলবে না। holyarrs,/holyarrsআর/holyarrs/সবই মানে/holyarrs।- সেভ করা পাথ বৈধ না হলে তা উপেক্ষা করা হয়।
- সবকিছু পাথের নিচে চলে যায়: পেজ, API, লাইভ আপডেট, সাইন ইন, আর HolyArrs-এর বানানো লিংক (ইনভাইট লিংক, ক্যালেন্ডার ফিড)।
/healthzও/readyzপাথ ছাড়া মূল ঠিকানাতেও সাড়া দেয়, তাই ইমেজের নিজের হেলথ চেক চলতে থাকে।- পাথের বাইরের অন্য যেকোনো ঠিকানা not found বলে।
প্রক্সিকে কী করতে হবে
| দরকার | কেন |
|---|---|
| পাথ অপরিবর্তিত পাঠানো | HolyArrs সম্পূর্ণ পাথ দেখে রুট করে। |
Host হেডার রাখা |
হোস্ট যাচাই আর বানানো লিংক এটি ব্যবহার করে। |
| রেসপন্স বাফার না করা | লাইভ আপডেট একটি খোলা রেসপন্সে স্ট্রিম হয়। |
| লম্বা রিড টাইমআউট (1 h) | লাইভ আপডেট স্ট্রিম খোলা থাকে। |
সংশ্লিষ্ট
সংশ্লিষ্ট-এর লিংকHolyArrs বিনামূল্যে। এটি আপনার সময় বাঁচিয়ে থাকলে GitHub-এ স্টার দিন, স্পনসর করুন অথবা এক কাপ কফি কিনে দিন।