के बावजूद मैं एक WSGI-ऐप (एक Django परियोजना) 127.0.0.1:18731
पर gunicorn के तहत चल रहा है और मैं mod_proxy साथ अपाचे का उपयोग http://example.com/my-project/*
से http://127.0.0.1:18731/*
करने के लिए अनुरोध पुनर्निर्देशित करने के लिए। स्टेटिक फाइल /my-project/
के बाहर संग्रहीत हैं। यदि Django ऐप को कुछ भी रीडायरेक्ट करने की आवश्यकता नहीं है, तो यह ठीक काम करता है, लेकिन अगर यह एक अनुरोध को रीडायरेक्ट करने का प्रयास करता है (उदाहरण के लिए http://example.com/my-project/foo
पर पिछला स्लैश जोड़ने के लिए), तो यह URL से /my-project/
को हटा देता है, जिससे मुझे अमान्य यूआरएल छोड़ दिया जाता है। http://example.com/foo/
।gunicorn परियोजना के दायरे के बाहर रीडायरेक्ट हो रहा है, ProxyPassReverse
<Proxy *>
Order deny,allow
Allow from all
</Proxy>
ProxyRequests On
ProxyPass /my-project/ http://127.0.0.1:18731/ retry=0
ProxyPassReverse /my-project/ http://127.0.0.1:18731/ retry=0
ProxyPreserveHost On
ProxyErrorOverride Off
मैं अपने सभी URL को /my-project/
उपसर्ग के लिए Django मजबूर करने के लिए नहीं करना चाहती पोर्टेबिलिटी के हित में,:
मेरे mod_proxy विन्यास इस प्रकार है। अपाचे को ProxyPassReverse
लाइन के साथ अपने आप उपसर्ग को संभालना चाहिए। मैं क्या गलत कर रहा हूं?
आपको समाधान के बारे में क्या पसंद नहीं है? –
मैं अपने व्यक्तिगत सबडोमेन के तहत उपलब्ध होने वाले ऐप्स के लिए विशेष रूप से Django के लिए एक नया निर्माण करने के बजाय चाहता हूं। – Fraxtil