2011-12-02 16 views
10

मैंने अपने Win7x64 Xampp और पायथन 2.7 पर स्थापित किया है।पायथन और एक्सएएमपीपी: कैसे करें?

अब मैं पायथन भाषा की "शक्ति" प्राप्त करने की कोशिश कर रहा हूं ... मैं इसे कैसे कर सकता हूं?

मैं mod_python और mod_wsgi लेकिन पहले एक अजगर की मेरी संस्करण के लिए मौजूद नहीं है के साथ की कोशिश की है, और जब मैं स्थापित करने के बाद अपाचे प्रारंभ करने का प्रयास WSGI यह मुझे एक त्रुटि

< Directory "\x93C:/wsgi_app\x94"> path is invalid 

मैं एक जोड़ा देता है स्ट्रिंग को यहां दृश्यमान बनाने के लिए < और 'निर्देशिका' के बीच की जगह।

तो ... कोई भी जानता है कि इन सुविधाओं को स्थापित करने के लिए कोई छोटा ट्यूटोरियल है या नहीं?

या कोई भी मुझे कदम बताएगा कि मैं क्या करूँ?

धन्यवाद और क्षमा करें अगर मैं मुझे समझाने में सक्षम नहीं हूं।

यदि आपको कुछ चाहिए तो कृपया मुझसे पूछें।

+0

अब यह मुझे "त्रुटि 500" या "त्रुटि 403" देता है :( – Bonny1992

उत्तर

14

हाँ आप सही हैं, mod_python पायथन 2.7 के साथ काम नहीं करेगा। तो mod_wsgi आपके लिए सबसे अच्छा विकल्प है।

मैं एएमपीपीएस की सिफारिश करता हूं क्योंकि पाइथन पर्यावरण डिफ़ॉल्ट रूप से mod_python और पायथन 2.5 के साथ सक्षम है। AMPPS Website

अगर आप अभी भी जारी रखना चाहते हैं,

httpd.conf में इस लाइन जोड़े

LoadModule wsgi_module modules/mod_wsgi.so 

टिप्पणी हटाएं httpd.conf में लाइन

Include conf/extra/httpd-vhosts.conf 

ओपन vhost फ़ाइल httpd-vhosts .conf और

NameVirtualHost 127.0.0.1:80 
<VirtualHost 127.0.0.1:80> 
    <Directory "path/to/directory/in/which/wsgi_test.wsgi/is/present"> 
     Options FollowSymLinks Indexes 
     AllowOverride All 
     Order deny,allow 
     allow from All 
    </Directory> 
    ServerName 127.0.0.1 
    ServerAlias 127.0.0.1 
    WSGIScriptAlias /wsgi "path/to/wsgi_test.wsgi" 
    DocumentRoot "path/to/htdocs" 
    ErrorLog "path/to/log.err" 
    CustomLog "path/to/log.log" combined 
</VirtualHost> 
01 जोड़ें

wsgi_test.wsgi में निम्नलिखित पंक्तियां जोड़ें

def application(environ, start_response): 
    status = '200 OK' 
    output = 'Hello World!' 

    response_headers = [('Content-type', 'text/plain'), 
         ('Content-Length', str(len(output)))] 
    start_response(status, response_headers) 

    return [output] 

नोट: htdocs में परीक्षण निर्देशिका मत करना। क्योंकि मैंने अभी तक कोशिश नहीं की है। ये कदम एएमपीपीएस में मेरे लिए काम करते थे। :)

फिर अपने पसंदीदा ब्राउज़र में 127.0.0.1/wsgi तक पहुंचें। आप हैलो वर्ल्ड देखेंगे!

यदि आप नहीं देखते हैं, QuickConfigurationGuide

या

आप httpd.conf में इन पंक्तियों में जोड़ सकते हैं

<IfModule wsgi_module> 
<Directory path/to/directory> 
    Options FollowSymLinks Indexes 
    AllowOverride All 
    Order deny,allow 
    allow from All 
</Directory> 
WSGIScriptAlias /wsgi path/to/wsgi_test.wsgi 
</IfModule> 
+1

वर्चुअल होस्ट आवश्यक है? :) वैसे भी जवाब के लिए धन्यवाद :) :) – Bonny1992

+0

नहीं यह आवश्यक नहीं है। आप इन लाइनों को httpd.conf पर भी जोड़ सकते हैं। <निर्देशिका path/to/निर्देशिका> विकल्प FollowSymLinks इंडेक्स AllowOverride सभी आदेश इनकार करते हैं, की अनुमति देने के /wsgi_test.wsgi

+0

AMPPS काम करता है के साथ ठीक करने के लिए सभी WSGIScriptAlias ​​/ WSGI पथ से अनुमति देते हैं/अब :) लेकिन अब मैं अपने वेबसर्वर से पाइथन अनुप्रयोग शुरू कर सकता हूं? :) – Bonny1992

14

WSGI एक बहुत बेहतर है का पालन करें, लेकिन कम से कम मैं googled और सफलता के बिना दिनों के लिए इसे स्थापित करने की कोशिश की। सीजीआई कम कुशल है, लेकिन अधिकांश लोग केवल विकास के लिए खिड़कियों का उपयोग करते हैं, इससे थोड़ा/कोई फर्क नहीं पड़ता है। इसे स्थापित करना बहुत आसान है!

सीजीआई विधि:

  1. XAMPP में \ अपाचे \ conf \ httpd.conf इस लाइन के लिए देखो: AddHandler cgi-स्क्रिप्ट .cgi .pl .asp। इसे संशोधित करें, ऐसा लगता है: AddHandler cgi-script .cgi .pl .asp .py
  2. आपके द्वारा बनाई गई प्रत्येक पायथन स्क्रिप्ट के शीर्ष पर, पायथन के अपने संस्करण के लिए पथ सेट करें। उदाहरण के लिए, तुम्हारा सी में है अगर: \ Python27 लिखने:
  3. रखें परीक्षण XAMPP \ cgi-bin और पहुँच स्थानीय होस्ट/में नमूना परीक्षण कोड #/Python27/अजगर cgi-bin/your-file.py

नमूना परीक्षण कोड (परिवर्तन अनुसार जहां आप इसे स्थापित किया है अजगर पथ टिप्पणी की):

#!C:/Python27/python 

print "Content-type: text/html\n\n" 
print "<html><head><title>Hello World from Python</title></head><body>Hello World from a Python CGI Script</body></html>" 

मैं XAMPP 1.8.1 में यह परीक्षण किया है अगर कुछ पढ़ने tihs काम नहीं करता:

स्रोत: http://elvenware.com/charlie/development/web/Python/Xampp.html

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