Nginx में हम निम्नानुसार एक URL को पुनर्निर्देशित करने का प्रयास कर रहे हैं:
http://example.com/some/path -> http://192.168.1.24
जहाँ उपयोगकर्ता अभी भी अपने ब्राउज़र में मूल URL देखता है। एक बार जब उपयोगकर्ता पुनर्निर्देशित हो जाता है, तो कहें कि वे लिंक पर क्लिक करते हैं /section/index.html
, हम चाहते हैं कि यह एक अनुरोध करे जिससे रीडायरेक्ट हो सके
http://example.com/some/path/section/index.html -> http://192.168.1.24/section/index.html
और फिर भी मूल URL को सुरक्षित रखें।
हमारे प्रयासों में परदे के पीछे और नियमों का उपयोग करते हुए विभिन्न समाधान शामिल हैं, और नीचे कॉन्फ़िगरेशन हमें दिखाता है कि हमें एक समाधान के सबसे करीब लाया गया है (ध्यान दें कि यह वेब सर्वर के लिए वेब सर्वर कॉन्फ़िगरेशन example.com
है)। हालाँकि, इसके साथ अभी भी दो समस्याएं हैं:
- यह फिर से लिखना ठीक से नहीं करता है,
http://192.168.1.24
जिसमें वेब सर्वर द्वारा प्राप्त अनुरोध URL शामिल है/some/path
और इसलिए आवश्यक पृष्ठ की सेवा करने में विफल रहता है। जब आप किसी लिंक को एक बार पृष्ठ परोसने के बाद होवर करते हैं, तो वह
/some/path
URL से गायब होता हैserver { listen 80; server_name www.example.com; location /some/path/ { proxy_pass http://192.168.1.24; proxy_redirect http://www.example.com/some/path http://192.168.1.24; proxy_set_header Host $host; } location / { index index.html; root /var/www/example.com/htdocs; } }
हम एक समाधान की तलाश कर रहे हैं जिसमें केवल वेब सर्वर कॉन्फ़िगरेशन को बदलना शामिल है example.com
। हम 192.168.1.24
(भी Nginx) पर कॉन्फिग को बदलने में सक्षम हैं , हालांकि हम इसे टालना चाहते हैं और इससे बचना चाहते हैं क्योंकि हमें सैकड़ों अलग-अलग सर्वरों के लिए इस सेटअप को दोहराना होगा, जिनकी पहुंच अनुमानित है example.com
।