2008-08-07 13 views
17

मैंने mod_python को स्थापित करने के लिए कुछ googled up ट्यूटोरियल का पालन करने का प्रयास किया, लेकिन हर बार विफल रहा। क्या आपके पास एक अच्छा, कदम-दर-चरण, रॉक-ठोस कैसे है?अपाचे 2.0 में काम करने के लिए आप पाइथन स्क्रिप्ट कैसे सेट अप करते हैं?

मेरा देव बॉक्स ओएस एक्स, उत्पादन - केंद्र है।

उत्तर

12

अपाचे पर पायथन चलाने के दो मुख्य तरीके हैं। सबसे आसान सीजीआई का उपयोग करना और सामान्य पायथन स्क्रिप्ट लिखना होगा जबकि दूसरा Django या Pylons जैसे वेब ढांचे का उपयोग कर रहा है।

सीजीआई का उपयोग सरल है। सुनिश्चित करें कि आपकी अपाचे कॉन्फ़िगरेशन फ़ाइल में एक cgi-bin सेट अप है। यदि नहीं, तो उनके दस्तावेज़ों का पालन करें (http://httpd.apache.org/docs/2.0/howto/cgi.html)। उस बिंदु पर आपको केवल अपनी पाइथन स्क्रिप्ट को cgi-bin निर्देशिका में रखना है और मानक आउटपुट HTTP प्रतिक्रिया बन जाएगा। अधिक जानकारी के लिए पायथन के दस्तावेज़ीकरण का संदर्भ लें (https://docs.python.org/library/cgi.html)।

यदि आप वेब ढांचे का उपयोग करना चाहते हैं तो आपको mod_python या FastCGI सेट अप करना होगा। ये चरण इस ढांचे पर निर्भर हैं कि आप किस ढांचे का उपयोग करना चाहते हैं। Django Apache के साथ mod_python और Django को सेट करने के तरीके पर स्पष्ट निर्देश प्रदान करता है (http://www.djangoproject.com/documentation/modpython/)

+2

mod_python पर जानकारी Django प्रोजेक्ट साइट से हटा दी गई है, क्योंकि अब वे mod_wsgi का उपयोग करने की सलाह देते हैं - https://docs.djangoproject.com/en/1.5/howto/deployment/wsgi/modwsgi/ –

8

हां, mod_python सेट अप करने में काफी भ्रमित है। यहां मैंने यह कैसे किया है।

httpd.conf में:

LoadModule python_module modules/mod_python.so 

<Directory "/serverbase/htdocs/myapp"> 
    AddHandler mod_python .py 
    PythonHandler myapp 
    PythonDebug On 

और आपके आवेदन निर्देशिका में:

$ /serverbase/htdocs/myapp$ ls -l 
total 16 
-r-xr-xr-x 1 root sys  6484 May 21 15:54 myapp.py 

दोहराएँ प्रत्येक अजगर कार्यक्रम के लिए विन्यास आप mod_python के तहत चल रहा है करना चाहते हैं।

5

क्या आप यूनिक्स या विंडोज पर पाइथन चला रहे हैं?

mod_python और FastCGI का एक विकल्प mod_wsgi है। आप modwsgi

पर और अधिक जानकारी प्राप्त कर सकते हैं मैंने समस्याओं के बिना सोलारिस पर इसे बनाया और इंस्टॉल किया है। मैंने पहले mod_python की कोशिश की थी लेकिन निर्माण के हिस्से के रूप में साझा पुस्तकालयों के साथ समस्याओं में भाग गया। good install docs उपलब्ध हैं।

0

मेरे लिए समस्या अपाचे सेट अप में नहीं थी, लेकिन यह समझने में कि mod_apache वास्तव में .py फ़ाइलों का उपयोग कैसे करता है। मॉड्यूल-स्तरीय बयान (if __name__=='__main__' सेक्शन सहित) निष्पादित नहीं हैं - मुझे लगता है कि कमांडलाइन पर स्क्रिप्ट चलाने से stdout सर्वर का आउटपुट होगा, लेकिन ऐसा नहीं है कि यह कैसे काम करता है।

इसके बजाय, मैंने मॉड्यूल-स्तरीय फ़ंक्शन लिखा है जिसे index() कहा जाता है, और यह पृष्ठ के HTML को स्ट्रिंग के रूप में वापस कर देता था। यह भी अन्य मॉड्यूल स्तर के कार्यों के लिए संभव है (जैसे, otherFunction()) कि

जाहिर है (फ़ाइल testScript.py। उदाहरण के लिए, testScript/otherFunction) यूआरआई में आगे सेगमेंट के रूप में पहुँचा जा सकता है, इस अधिक भावना अपने मूल stdout गर्भाधान से बनाता है । वास्तव में एक पटकथा भाषा के रूप में पाइथन का उपयोग करने की एक बेहतर क्षमता और एक विशाल मार्कअप भाषा नहीं।

 संबंधित मुद्दे

  • कोई संबंधित समस्या नहीं^_^