"कोई एमपीएम लोड नहीं", लेकिन मैं mpm का उपयोग भी नहीं कर रहा हूँ


10

Vagrant में Ubuntu Precise64 पर Apache2 चल रहा है। जब मैं इसे शुरू करने की कोशिश करता हूं, तो यह कहता है:

vagrant@precise64:/etc/apache2$ /etc/init.d/apache2 start
 * Starting web server apache2
 *
 * The apache2 configtest failed.
Output of config test was:
AH00534: apache2: Configuration error: No MPM loaded.
Action 'configtest' failed.
The Apache error log may have more information.

लेकिन बात यह है, मेरी /etc/apache2/apache2.confफ़ाइल कहीं भी एमपीएम के लिए कॉल नहीं करती है! मैं इसे यहाँ पेस्ट करूँगा लेकिन यह एक विशाल पोस्ट के लिए बनेगा ...

मैंने त्रुटि लॉग देखने का प्रयास किया, लेकिन मुझे वह कहीं भी नहीं मिला। मदद?

संपादित करें: apache2 -l यह देता है:

vagrant@precise64:/$ apache2 -l  
Compiled in modules:             
  core.c                         
  mod_so.c                       
  mod_watchdog.c                 
  http_core.c                    
  mod_log_config.c               
  mod_logio.c                    
  mod_version.c                  
  mod_unixd.c                    
  mod_unixd.c                    

तो ऐसा लगता है कि कोई mpm स्थापित नहीं है, है ना? यदि कोई MPM स्थापित नहीं है और किसी MPM ने मेरी कॉन्फ़िगर फ़ाइल में उल्लेख नहीं किया है, तो मैं अभी भी इस त्रुटि को क्यों देख रहा हूं?


1
Dpkg

मेरे लिए यह शुद्ध करने के लिए पर्याप्त था, पुराने कॉन्फिग फाइलों पर फिर से इंस्टॉल और कॉपी करें, जो भी अपराधी था;)
मेलिसा लूज़

जवाबों:


10

apache2 -t -D DUMP_MODULES (या -M) आपको मॉड्यूल की एक सूची देनी चाहिए। आपको कार्यकर्ता.c या prefork.c या event.c देखना चाहिए। यह निर्धारित करने के लिए कि आप किस MPM का उपयोग कर रहे हैं।

अगर आपके पास कुछ ऐसा है (यदि आप पूर्वनिर्मित एमपीएम का उपयोग करते हैं) तो अपनी कॉन्फिग फाइलों में देखें।

यहाँ एक उदाहरण है:

<IfModule mpm_prefork_module>
StartServers          5
MinSpareServers       5
MaxSpareServers      10
MaxClients          150
MaxRequestsPerChild   0
</IfModule>

अपनी कॉन्फ़िग फ़ाइल में इस तरह से एक ब्लॉक जोड़ें और यह काम करना चाहिए। सत्यापित करें कि Apache2-mpm-prefork (या कार्यकर्ता, या घटना) सही तरीके से स्थापित है।

आपके उपयोग के लिए उपयुक्त MPM चुनने में आपकी सहायता करने के लिए इस दस्तावेज़ को पढ़ें: http://httpd.apache.org/docs/2.2/mpm.html


कमांड आउटपुट के साथ मूल प्रश्न अपडेट करें ... ऐसा लगता है कि कोई mpm मॉडल नहीं है, इसलिए मुझे समझ नहीं आ रहा है कि मैं त्रुटि क्यों देख रहा हूं। कोई उपाय?
इज़ुक

1
आपको एक एमपीएम मॉड्यूल चुनना होगा, यह अनिवार्य है।
विन्ज

हाय @Vinz। मुझे वास्तव में एक ही समस्या है (Ubuntu 13.10, Apache 2.4.6) और आपके समाधान की कोशिश की। मुझे अपनी कॉन्फ़्रेंस फ़ाइल में वह ब्लॉक याद आ रहा था, लेकिन इसे जोड़ने से समस्या हल नहीं हुई। कोई अन्य विचार? मैं यहाँ खो गया हूँ थोड़े।
इटाई बार-हैम

@ ItaiBar-Haim: इस ब्लॉक को जोड़ने के बाद त्रुटि संदेश क्या है?
विंज़

@Vinz यह वही त्रुटि थी। हालांकि मुझे पता चला कि जब मैं डिफ़ॉल्ट अपाचे कॉन्फ़िगरेशन का उपयोग करता हूं और इसे किसी भी तरह से ओवरराइड करने की कोशिश नहीं करता हूं तो चीजें काम करने लगती हैं।
इताई बार-हैम

10

मेरी भी यही समस्या थी। मैंने गलती से ओवरवॉट कर दिया /etc/apache2/apache2.conf। सुधारने के लिए, मुझे sudo apt-get purge apache2पूरी तरह से अपाचे को हटाने के लिए दौड़ना पड़ा और फिर sudo apt-get install apache2मूल apache2.confफ़ाइल को वापस पाने के लिए दौड़ना पड़ा।

नोट : किसी भी कस्टम फ़ाइलों को /etc/apache2/sites-availableशुद्ध करने से पहले बैकअप लें ।


मुझे वैग्रांट को चलाने में इसी तरह की समस्या थी और यह पता चला कि मैंने गलती से Apache2.conf में सभी सामग्री मिटा दी थी। हालांकि थोड़ा वापस करना आसान है vagrant destroy && vagrant up
forsvunnet
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.