के पीछे एक उपनगर के नीचे django को कैसे तैनात करें मेरे पास http://localhost:12345 पर चल रहा एक django अनुप्रयोग है। मैं उपयोगकर्ता को यूआरएल http://my.server.com/myapp के माध्यम से इसे एक्सेस करना चाहता हूं। मैं nginx का उपयोग जैसे कि यह करने के लिए प्रॉक्सी उल्टा करने के लिए निम्नलिखित:nginx
... ...
server_name my.server.com;
location /myapp {
rewrite /myapp(.*) $1 break;
... ... # proxy param
proxy_pass http://localhost:12345;
}
... ...
सवाल है, जब ऊपर की तरह कॉन्फ़िगर किया गया है, कैसे बनाने के लिए मेरी प्रतिक्रिया पन्नों में यूआरएल "/ MyApp" इतना है कि का एक उपसर्ग है करने के लिए nginx उन्हें सही ढंग से myapp को निर्देशित कर सकते हैं। उदाहरण के लिए, "/ foo/far" जैसे किसी पृष्ठ में यूआरएल को nginx प्रॉक्सी को myapp में अनुमति देने के लिए "/ myapp/foo/bar" में बदला जाना चाहिए। यह प्राप्त करने के लिए उपयोग करने के लिए सही nginx कॉन्फ़िगरेशन क्या है?
मैं रूट यूआरएल उपसर्ग निर्दिष्ट करने के लिए django के सेटिंग्स चर का उपयोग कर सकता हूं, लेकिन यह मेरे दिमाग में फ्लेक्सिबल नहीं है, क्योंकि परिवर्तनीय को विभिन्न nginx कॉन्फ़िगरेशन के अनुसार संशोधित किया जाना चाहिए (एक दिन nginx से उपन्यास बदल सकता है "/ myapp "to"/anotherapp ")।
धन्यवाद, ध्वनि मैं इस पोस्ट के लिए WSGIScriptAlias चाल –
धन्यवाद अच्छाई के साथ जाना है की तरह। "Proxy_set_header" चाल ने मुझे Google खोज के दुःस्वप्न से बचाया। मुझे बेहतर जाना चाहिए था। ग्रेसियस। –