सवाल अपाचे 2 स्टार्टअप चेतावनी: NameVirtualHost *: 80 में वर्चुअलहोस्ट नहीं हैं


जब मेरा उबंटू अपाचे सर्वर (अपाचे 2) शुरू होता है तो मुझे एक चेतावनी संदेश मिलता है जो पढ़ता है:

[warn] NameVirtualHost *:80 has no VirtualHosts

हालांकि, वेब सर्वर ठीक काम कर रहा है। मेरी साइट की कॉन्फ़िगरेशन में मुझे यह चेतावनी देने के लिए क्या गलत हो सकता है?

प्रश्न में विन्यास फाइल (में स्थित है /etc/apache2/sites-available) जैसे पढ़ता है (ब्रेवटी के लिए विवरण हटा दिए गए हैं)

<VirtualHost *>
    <Location /mysite>
        # Configuration details here...
    </Location>

    # Use the following for authorization.
    <LocationMatch "/mysite/login">
        AuthType Basic
        AuthName "My Site"
        AuthUserFile /etc/sitepasswords/passwd
        Require valid-user
    </LocationMatch>
</VirtualHost>

क्या मैं इस तथ्य का उपयोग कर रहा हूं <Location> समस्या का हिस्सा बनें?


66
2018-04-30 18:16


मूल




जवाब:


परिवर्तन

<VirtualHost *>

पढ़ने के लिए

<VirtualHost *:80>

या इसका (NameVirtualHost *: 80) आपके apache2 में दो बार जोड़ा गया फ़ाइल को कॉन्फ़िगर करना। (डिफ़ॉल्ट रूप से इसे पोर्ट्स.कॉफ़ फ़ाइल में जोड़ा गया)

यह त्रुटि को साफ़ करना चाहिए।

एक तरफ: आपको इस त्रुटि को अनदेखा नहीं करना चाहिए। अपाचे की कॉन्फ़िगरेशन, विशेष रूप से जब वर्चुअल होस्ट globbing (उदाहरण /etc/httpd/vhosts.d/* शामिल) स्थिर नहीं है। इसका मतलब है कि आप मेजबान को स्पष्ट रूप से लोड करने के क्रम को नियंत्रित नहीं करते हैं, इसलिए एक आईपी के लिए डिफ़ॉल्ट vhost पहले लोड किया जाता है, जो अनपेक्षित परिणामों का कारण बन सकता है।

इसका एक उदाहरण आईपी के लिए डिफ़ॉल्ट vhost भी इसके बजाय उस आईपी पर उपलब्ध होगा नाम। इससे जानकारी के बजाए आपकी साइट आईपी के संदर्भ में Google पर जानकारी लीक हो सकती है, जो ग्राहकों के लिए भ्रमित हो सकती है।

उपरोक्त NameVirtualHost त्रुटि एक संकेत हो सकता है कि अपाचे ने चीजों को एक इष्टतम तरीके से लोड किया है, इसलिए आपको इसे अनदेखा नहीं करना चाहिए।


53
2018-05-10 03:30



बिल्कुल सही किया! इसे साफ करने के लिए धन्यवाद! - Kit Roed
आप इस तरह डिफ़ॉल्ट vhost सेट कर सकते हैं: <VirtualHost _default_ thehostname.com> - Amy B


ऐसा इसलिए हो सकता है क्योंकि आपके पास एक से अधिक स्थानों में NameVirtualHost निर्देश है।

मुझे अन्य वितरणों के बारे में पता नहीं है, लेकिन उबंटू / डेबियन में, अपाचे की कॉन्फ़िगरेशन कई फ़ाइलों में विभाजित है, इसलिए आपको यह जांचना होगा कि डुप्लिकेशंस कहां है (httpd.conf, apache2.conf, ports.conf, conf.d / *)।

ओह, और मुझे अभी इस जानकारी को अधिक जानकारी के साथ मिला है: सामान्य अपाचे Misconfigurations


51
2018-04-30 18:21



आपके द्वारा दिया गया लिंक अपाचे कॉन्फ़िगरेशन फ़ाइलों की बारीकियों को समझने की कोशिश करने के लिए एक महान संसाधन की तरह दिखता है। धन्यवाद! - Kit Roed
धन्यवाद! यह मेरी समस्या थी - मैंने NameVirtualHost के लिए वर्चुअल.conf बनाया था, यह नहीं जानते कि यह पहले से ही पोर्ट्स.कॉन्फ़ में था - rcampbell
धन्यवाद - एक उबंटू सर्वर डिफ़ॉल्ट कॉन्फ़िगरेशन में यहां एक ही समस्या है: पोर्ट्स.कॉफ़ में NameVirtualHost है : 80 और साइटों में दोहराया नहीं जाना चाहिए-सक्षम / विन्यास फाइलें! - DrSAR
मेरे मामले में, यह मुद्दा इसलिए था क्योंकि उबंटू था NameVirtualHost *:80 दोनों अंदर ports.conf और में conf.d/virtualhosts, जो एक उबंटू बग प्रतीत होता है। - fluffy


डेबियन / लेनी बॉक्स पर: /Etc/apache2/ports.conf में एक अतिरिक्त नाम वर्चुअलहोस्ट स्टेटमेंट है - जो इस समस्या का कारण हो सकता है (/ etc / apache2 / साइट-उपलब्ध / डिफ़ॉल्ट में भी वही कथन है)। मैंने उस कथन पर टिप्पणी की और त्रुटि गायब हो गई।


9
2017-07-19 08:12





वर्चुअलहोस्ट प्रविष्टि के मिलान के बिना आपके पास NameVirtualHost है।

यह आमतौर पर घातक नहीं है, केवल एक सूचनात्मक त्रुटि है।


3
2018-04-30 18:22





ऐसा इसलिए है क्योंकि आपकी NameVirtualHost लाइन पर एक पोर्ट नंबर है (:80), लेकिन आपके वर्चुअलहोस्ट अनुभाग नहीं हैं।


3
2018-04-30 18:42





एएस रुने का उल्लेख है, डेबियन सिस्टम पर NameVirtualHost कई फाइलों में दिखाई देता है - ports.conf, conf.d / virtual.conf और संभवतः आपकी स्वयं की conf फ़ाइलें int साइट्स-उपलब्ध

सुनिश्चित करें कि यह एक स्थान पर मौजूद है जैसे NameVirtualHost *: 80 (मेरा conf.d / virtual.conf में है) और चेतावनियां चलनी चाहिए।

जैसा कि बताया गया है कि आपको प्रत्येक साइट के लिए वर्चुअलहोस्ट दिशा बनाने की भी आवश्यकता है-उपलब्ध इस प्रारूप में है <VirtualHost *:80>


2
2017-11-15 14:19





मुझे एक ही समस्या है, लेकिन मैं कुछ पल में अपाचे की डिफ़ॉल्ट साइट को अक्षम करता हूं। मैं कुछ पसंद करता हूँ

# a2dissite default

अपाचे 2 को पुनरारंभ करने का प्रयास करने के बाद, मुझे यह संदेश प्राप्त होता है:

"[चेतावनी] NameVirtualHost *: 80 में कोई वर्चुअलहोस्ट नहीं है"

फिर मैं अपाचे 2 की 'डिफ़ॉल्ट' साइट को दोबारा सक्षम करता हूं और सब कुछ फिर से काम करता है, इस्तेमाल किया गया आदेश है:

# a2ensite default

बस आज के लिए इतना ही!


2
2018-03-31 19:53



यह सबसे अच्छी सलाह रही है। - jini
बहुत बढ़िया सलाह, मैं zpanelCP चला रहा हूं और कुछ भी नहीं बल्कि यह काम करता है। धन्यवाद ! :) - Eliran Efron