सवाल डेबियन "साइट-उपलब्ध" और "साइट-सक्षम" dirs का उद्देश्य


क्या कोई मुझे बता सकता है-संक्षेप में- इन दो निर्देशिकाओं का उद्देश्य डेबियन में क्या है?

/etc/apache2/sites-enabled
/etc/apache2/sites-available

मुझे लगता है कि diffing sites-available/000-default तथा sites-enabled/default दिखाता है कि वे समान हैं।

क्या देता है?


54
2017-11-11 01:36


मूल




जवाब:


साइट-उपलब्ध में आपकी प्रत्येक साइट के लिए अपाचे कॉन्फ़िगरेशन फ़ाइलें शामिल हैं। उदाहरण के लिए:

<VirtualHost *:80>
  ServerName site.mysite.com
  ServerAdmin my@email.com

  DirectoryIndex index.php
  DocumentRoot /home/user/public_html/site.mysite.com/public

  LogLevel warn
  ErrorLog /home/user/public_html/site.mysite.com/logs/error.log
  CustomLog /home/user/public_html/site.mysite.com/logs/access.log combined
</VirtualHost>

जब आप एक नई साइट जोड़ना चाहते हैं (उदाहरण के लिए, site.mysite.com), तो आप इसे यहां जोड़ते हैं, और इसका उपयोग करते हैं:

a2ensite site.mysite.com

साइट को सक्षम करने के लिए। एक बार साइट सक्षम होने के बाद, कॉन्फ़िगरेशन फ़ाइल में एक सिम्लिंक साइट-सक्षम निर्देशिका में रखा जाता है, यह दर्शाता है कि साइट सक्षम है।


60
2017-11-11 01:42



यदि आप किसी साइट को अक्षम करना चाहते हैं, तो आप a2dissite site.mysite.com चलाएंगे
a2ensite तथा a2dissite में स्थित हैं /usr/sbin जो वर्तमान में डिफ़ॉल्ट उपयोगकर्ता पथ में शामिल नहीं है, इसलिए टैब पूर्णता काम नहीं करेगी। टाइप करते समय sudo a2 और टैब कुंजी दबाकर हालांकि आपको दोनों की पेशकश की जाएगी a2ensite तथा a2dissite। - Stefan Schmidt


सिस्टम के यांत्रिकी से अधिक महत्वपूर्ण तर्क है ...

डेबियन दो अलग-अलग निर्देशिका प्रदान करता है ताकि यदि आप स्वचालित रूप से अपने अपाचे कॉन्फ़िगरेशन का प्रबंधन कर रहे हों, तो आप केवल सभी vhosts ड्रॉप कर सकते हैं sites-available आपकी सभी मशीनों पर, और फिर सर्वर पर व्यक्तिगत vhosts सक्षम किया जा सकता है जो वास्तव में उनकी सेवा करेगा। इसका मतलब यह भी है कि यदि आप समस्याएं पैदा कर रहे हैं तो आप तुरंत साइट को अक्षम कर सकते हैं (a2dissite example.com; /etc/init.d/apache2 reload)।


19
2017-11-11 05:59



यह एक है सच मूल प्रश्न के लिए उत्तर। - silpol


उपर्युक्त में जोड़ने के लिए, फ़ाइल में sites-enabled एक symlink है sites-available फ़ाइल:

ls -l /etc/apache2/sites-enabled/

यह सिर्फ वही सामग्री नहीं है, यह वही वास्तविक फ़ाइल है!


4
2018-06-08 14:51





महत्वपूर्ण जानकारी:

आपको फाइलों को संपादित करना चाहिए केवल में sites-available निर्देशिका।

कभी मत करो अंदर फ़ाइलों को संपादित करें sites-enabled निर्देशिका, अन्यथा आपको समस्या हो सकती है यदि आपका संपादक स्मृति से बाहर चला जाता है या किसी भी कारण से, यह एक SIGHUP या SIGTERM प्राप्त करता है।

उदाहरण के लिए: यदि आप उपयोग कर रहे हैं nano फ़ाइल को संपादित करने के लिए sites-enabled/default और यह स्मृति से बाहर चला जाता है या, किसी भी कारण से, यह एक SIGHUP या SIGTERM प्राप्त करता है, फिर nano नामक आपातकालीन फाइल तैयार करेगी default.save, के अंदर sites-enabled निर्देशिका। तो, अंदर एक अतिरिक्त फाइल होगी sites-enabled निर्देशिका। इससे अपाचे या एनजीआईएनएक्स शुरू हो जाएगा। यदि आपकी साइट काम कर रही थी, तो यह अब और नहीं रहेगी। लॉग इन में, कुछ संबंधित होने तक आपको पता चल जाएगा कि आपके पास मुश्किल समय होगा default.save फ़ाइल और फिर, इसे हटा दें।

उपर्युक्त उदाहरण में, यदि आप अंदर फ़ाइल संपादित कर रहे थे sites-available निर्देशिका, कुछ भी बुरा नहीं हुआ होता। फ़ाइल sites-available/default.save बनाया गया होगा, लेकिन यह अंदर कोई नुकसान नहीं होगा sites-available निर्देशिका।


1
2018-01-10 12:20



बहुत ही रोचक! क्या कोई और इसकी पुष्टि कर सकता है? - aaaidan
यहां किसी ऐसे व्यक्ति का उदाहरण दिया गया है जिसकी समस्या थी: stackoverflow.com/questions/36808705/... - viniciussss
निम्नलिखित लिंक में कुछ ऐसा ही हुआ। साइट-सक्षम में फ़ाइलों को संपादित करने के बारे में, answaer में Melvyn टिप्पणी देखें। stackoverflow.com/questions/26210115/... - viniciussss