टेक्स्ट दिखाने के बजाय मैं अपाचे को एक cgi कैसे चलाऊं?


12

मैं ubuntu 11.04 पर बगज़िला 4 स्थापित करने की कोशिश कर रहा हूँ

मैंने अपने httpd.conf से निम्नलिखित को जोड़ा है

<Directory “/var/www/dev.spincentre/bugzilla”>
   AddHandler cgi-script .cgi
   Options +Indexes +ExecCGI
   DirectoryIndex index.cgi
   AllowOverride Limit
</Directory>

लेकिन जब मैं URL पर जाता हूं, तो अपाचे स्क्रिप्ट निष्पादित करने के बजाय index.cgi का पाठ दिखाता है। इसे कैसे ठीक किया जाये, कोई विचार?

जवाबों:


18

आपने mod_cgi मॉड्यूल लोड किया था? आप देख सकते हैं कि निर्देशिका / etc / apache2 / mods-enable / में सिमलिंक है या नहीं cgi.load। अगर ऐसा कोई सिमलिंक नहीं है, तो आप इसे चलाकर बना सकते हैं

sudo a2enmod cgi

और फिर अपाचे को पुनरारंभ करें:

sudo service apache2 restart

आप यह man a2enmodदेखने के लिए दौड़ सकते हैं कि क्या a2enmodहोता है।


पुराने सर्वरों से माइग्रेशन की प्रक्रिया में उबंटू 14.04 पर भी मेरे पास ऐसा ही मुद्दा था। मैंने कभी नहीं सोचा था कि डिफ़ॉल्ट रूप से cgi को निष्क्रिय कर दिया जाएगा जो पुराने सर्वर के साथ नहीं है। यह तय! Plz उन्हें stackoverflow.com/questions/15199198/… पर समान सुझाते हैं । धन्यवाद!
user3215

मेरे पास सिमिंक है लेकिन cgi अभी भी नहीं चल रही है।
वाइटेकेट

1

2.4 अपाचे को स्थापित करते समय मेरे पास हल करने के लिए कई मुद्दे थे और इसमें भी वही मुद्दा था जिसमें पाठ को चलाने के बजाय सीजीआई दिखाया गया था। समाधान ऊपर के समान नहीं है, जो कि अपाचे 2.2 के लिए समाधान है

सबसे पहले आप 2.4 gz फाइल डाउनलोड करेंगे और अनपैक करेंगे। यदि आप इसे संकलित करने का प्रयास करते हैं, तो शिकायत होगी कि APR नहीं मिला है, क्योंकि यह अब शामिल नहीं है। आपको एप्री से एप और एप-यूसेज फाइलों को डाउनलोड करना होगा और उन्हें डायरेक्ट्री में अपाचे को srclib नामक डायरेक्टरी में अनपैक करना होगा, इसलिए आपका रास्ता होगा ।/httpd/srclib/sr//httpd/srclib/apr/। -util। आपको निर्देशिका नाम से किसी भी संस्करण संख्या को निकालना होगा।

सीडी अपने / पथ / httpd निर्देशिका और संकलन के साथ

$ ./configure --with-शामिल-अप्रैल

आप PREFIX = / usr / स्थानीय / apache2 में डिफ़ॉल्ट रूप से कॉन्फ़िगर करेंगे

$ बना

$ स्थापित करें

$ vi PREFIX / conf / httpd.conf

आपको cgi चलाने के लिए अपनी httpd.conf फाइल को एडिट करना होगा

मेरे मामले में मैंने निम्नलिखित कार्य किया:

बदलाव सुनो 80.0.0.0.1:80 सुनो

लाइन सक्रिय करें: LoadModule cgid_module मॉड्यूल / mod_cgid.so

परिवर्तित नाम: ServerName 127.0.0.1:80

मेरे सिस्टम के अनुरूप DocumentRoot और Directory में पथ बदले

ScriptAlias ​​में रास्ता बदल दिया

रेखा को Scriptsock cgisock सक्षम किया

मेरी प्रणाली के अनुरूप ScriptAlias ​​के बाद निर्देशिका में पथ परिवर्तित किया गया

लाइन को सक्षम करें AddHandler cgi-script .cgi

परिवर्तनों को सहेजा और इसके साथ अपाचे शुरू किया:

$ / usr / स्थानीय / apache2 / bin / apachectl -k शुरू

आशा है कि इससे किसी को भी संघर्ष करने में मदद मिलेगी;)


साझा करने के लिए धन्यवाद, मुझे परेशानी हो रही है, क्या आप इसे बेहतर तरीके से आयोजित करना चाहेंगे?
user230910
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.