विंडोज पर अपाचे 2.4 धीरे-धीरे प्रतिक्रिया करता है, कुछ गतिशील पृष्ठों की सेवा करते समय लटका हुआ है


30

(मैं इस सवाल का जवाब जानता हूं। इस पोस्ट को केवल समुदाय के साथ साझा करने के लिए पोस्ट कर रहा हूं)

Apache 2.4 का मेरा स्थानीय (विंडोज 7) उदाहरण कुछ URLs की सेवा के दौरान देरी या हैंग-अप का अनुभव करता है, इस पर निर्भर करता है कि मैं इन URL का उपयोग करने के लिए किस ब्राउज़र का उपयोग करता हूं

फ़ायरफ़ॉक्स / क्रोम के साथ, अपाचे कुछ यूआरएल पर प्रतिक्रिया देने के लिए धीमा है । सुस्ती किसी भी दिए गए URL पर लगभग 20% होती है। जब ऐसा होता है, तो 5 सेकंड की देरी होती है, जिसके दौरान फ़ायरफ़ॉक्स "प्रतीक्षा कर रहा है ..." स्थिति प्रदर्शित करता है।

इंटरनेट एक्सप्लोरर 9 के साथ, अपाचे बस हैंग हो जाता है और किसी भी अनुरोध (किसी भी ब्राउज़र के साथ) को फिर से चालू करने तक रोक देता है।

  • यह केवल डायनेमिक (PHP) अनुरोधों के साथ होता है, लेकिन उन सभी में नहीं। वास्तव में, यह केवल एक विशिष्ट साइट पर होता है। एक ही मशीन पर अन्य PHP- आधारित साइटें ठीक काम करती हैं।
  • यह महत्वपूर्ण हो सकता है या नहीं भी हो सकता है कि समस्याग्रस्त साइट में बड़ी संख्या में उप-डोमेन (VirtualHosts) हैं।
  • Windows फ़ायरवॉल और कोमोडो फ़ायरवॉल को अक्षम करने से मदद नहीं मिलती है।
  • समस्या "बसियर" पृष्ठों (IFRAMES के लिए अतिरिक्त अनुरोध आदि) के साथ अधिक बार लगती है।

मैंने कई बदलावों की कोशिश की है httpd.conf(जैसे KeepAlive, EnableMMAP, HostnameLookups को अक्षम करना), लेकिन कुछ भी काम नहीं करता है।


1
एक बार जब आपके पास कुछ वोट होते हैं, तो आपको जवाब को वास्तविक उत्तर में स्थानांतरित करने की प्रतिष्ठा होगी, जिसे आपको तब करना चाहिए। (अगर और कुछ नहीं, तो
अपवोट्स

1
Google के माध्यम से इस पोस्टिंग को खोजने के लिए: नीचे दिया गया समाधान भी इस त्रुटि के लिए काम करता है: " (OS 64) निर्दिष्ट नेटवर्क नाम अब उपलब्ध नहीं है। AH00341: winnt_accept: अतुल्यकालिक एक्सेप्ट फेल है। " जर्मन में: " (OS 64) Der angegebene Netzwerkname ist nicht mehr verüügbar।: AH00341: winnt_accept: एसिंक्रोनस एक्सेप्ट फेल। "
उवे कीम

जवाबों:


35

थॉमसज़ ने उत्तर दिया


समाधान आपके लिए निम्नलिखित जोड़ना है httpd.conf:

AcceptFilter http none
AcceptFilter https none

विंडोज पर, इसमें एक्सेप्ट () एपीआई (विनकॉक का हिस्सा) को अक्षम करने का प्रभाव है, जो कुछ प्रदर्शन में सुधार प्रदान करता है, लेकिन संभवतः कोमोडो फ़ायरवॉल के साथ संघर्ष करता है।

कोमोडो फ़ायरवॉल को "अक्षम" मोड में रखने से मदद नहीं मिलती है क्योंकि अनुरोध शायद अभी भी कोमोडो के नेटवर्किंग कोड के माध्यम से चलते हैं। मुझे लगता है कि समस्या को खत्म करने के लिए कोमोडो को पूरी तरह से अनइंस्टॉल करना होगा (हालांकि मैंने इसकी कोशिश नहीं की है)।

यदि आपको Apache 2.2 की समस्या है, तो आपको इसके बजाय Win32DisableAcceptEx निर्देश का उपयोग करना चाहिए।

संदर्भ

Http://httpd.apache.org/docs/2.4/mod/core.html से उद्धरण :

विंडोज पर डिफ़ॉल्ट मान हैं:

AcceptFilter http data

AcceptFilter https data

विंडो का mpm_winnt एक्सेप्ट एक्सेल () API को टॉगल करने के लिए AcceptFilter की व्याख्या करता है, और http प्रोटोकॉल बफरिंग का समर्थन नहीं करता है। दो मान हैं जो विंडोज एक्सेप्ट () एपीआई का उपयोग करते हैं और कनेक्शन के बीच नेटवर्क सॉकेट को रीसायकल करेंगे। डेटा तब तक प्रतीक्षा करता है जब तक डेटा ऊपर दस्तावेज के रूप में प्रेषित नहीं किया गया है, और प्रारंभिक डेटा बफर और नेटवर्क समापन बिंदु पते सभी को सिंगल एक्सेप्ट () मंगलाचरण से पुनर्प्राप्त किया जाता है। कनेक्ट एक्सेप्ट () एपीआई का उपयोग करेगा, नेटवर्क समापन बिंदु पते को भी पुनः प्राप्त करेगा, लेकिन जैसे कोई भी कनेक्ट विकल्प प्रारंभिक डेटा ट्रांसमिशन की प्रतीक्षा नहीं करता है।

विंडोज पर, कोई भी एक्सेप्ट () के बजाय स्वीकार () का उपयोग नहीं करता है और कनेक्शन के बीच सॉकेट को रीसायकल नहीं करेगा। यह टूटे हुए ड्राइवर समर्थन के साथ नेटवर्क एडेप्टर के लिए उपयोगी है, साथ ही कुछ वर्चुअल नेटवर्क प्रदाता जैसे वीपीएन ड्राइवर, या स्पैम, वायरस या स्पायवेयर फिल्टर।

इसे भी देखें: http://forums.comodo.com/help-for-comodo-antivirus/conflict-with-apache-t260.0.html;msg31636#msg31636


1
मैं IE10 के साथ समस्या हो रही है Apache2.4 के कारण (कोई कोमोडो शामिल नहीं) जब तक कि सेवा को फिर से शुरू नहीं किया जाता है और इनको इसे शामिल करने के लिए .conf को बदल दिया जाता है। इसे पोस्ट करने के लिए धन्यवाद।
मैट लोहकैंप

1
यह मेरे लिए भी काम किया। मैंने अपने ब्लॉग पर कुछ और संदर्भ भी एकत्रित किए क्योंकि इस विषय की जानकारी फिलहाल बहुत बिखरी हुई है।
स्टिजन डे विट

3
मेरे लिए काम किया, विन 7 x64। मुझे आश्चर्य है कि noneअपाचे में डिफ़ॉल्ट सेटिंग क्यों नहीं है? अधिकांश अन्य 'इनोवेटिव' फीचर्स अपाचे में डिफ़ॉल्ट रूप से अक्षम हैं: P
rustyx

-1

मैं विंडोज 7 प्रो बॉक्स पर अपाचे 2.4.16 चला रहा हूं, और मेरी वेबसाइट ने लगभग 2 सप्ताह पहले काम करना बंद कर दिया है। इस समस्या को जोड़ना।

ServerRoot "C:/Program Files (x86)/Apache Software Foundation/Apache2.4"

#
# Listen: Allows you to bind Apache to specific IP addresses and/or
# ports, instead of the default. See also the <VirtualHost>
# directive.
#
# Change this to Listen on specific IP addresses as shown below to 
# prevent Apache from glomming onto all bound IP addresses.
#
#Listen XX.XX.XX.XX:80
Listen 80
AcceptFilter http none
AcceptFilter https none

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