में पथ रूटिंग मैं साझा होस्टिंग वातावरण पर एक पायथन सीजीआई चलाने के लिए चाहता हूं। मैं बोतल के उदाहरण का पालन किया और नीचे के रूप में एक छोटे से आवेदन के साथ आया था:फ्लास्क
from flask import Flask
app = Flask(__name__)
@app.route("/")
def hello():
return "Hello World!"
@app.route("/pi")
def pi():
return "3.1416"
if __name__ == "__main__":
app.run()
मेरे .htaccess
शामिल हैं:
Options +ExecCGI
AddHandler cgi-script .cgi .py .rb
DirectoryIndex index.cgi index.htm
और मेरे index.cgi
#!/usr/bin/env python
from wsgiref.handlers import CGIHandler
from firstflask import app
CGIHandler().run(app)
यह सफलतापूर्वक करने के लिए पथ /
नक्शे है index()
, हालांकि यह /pi
से pi()
पथ को मैप करने में विफल रहता है, इसके बजाय 404 त्रुटि बदलना मुझे लगता है मुझे कुछ स्पष्ट याद आती है। सहायता के लिए धन्यवाद।
क्या यह अपाचे के साथ है? मुझे लगता है कि एक अपाचे टैग जोड़ने से आपको अधिक जवाब मिलेंगे क्योंकि यह एक वेब सर्वर कॉन्फ़िगरेशन समस्या का अधिक प्रतीत होता है। – six8
क्या आपका होस्ट केवल CGI का समर्थन करता है या क्या वे mod_python या mod_wsgi का समर्थन करते हैं? वे बहुत बेहतर विकल्प हैं। – six8
सिक्सीट, आप सही हैं यह अपाचे के साथ है। मैं पाइथन वेब-फ्रेमवर्क के लिए नया हूं। सीजीआई सेटिंग सेटअप करने के लिए mod-wsgi से तेज लगती है। यही कारण है कि मैं सीजीआई चुनता हूं। एक और बात, मुझे संदेह है कि इसे यूआरएल-रीराइट की आवश्यकता हो सकती है। लेकिन क्योंकि मुझे दस्तावेज़ में उल्लिखित यूआरएल-रीराइट नहीं देखा गया था, इसलिए मुझे लगता है कि इसकी कोई ज़रूरत नहीं है। धन्यवाद – sdc