नगीनेक्स लापता साइट-उपलब्ध निर्देशिका


189

मैंने Centos 6 पर Nginx स्थापित किया है और मैं वर्चुअल होस्ट स्थापित करने का प्रयास कर रहा हूं। मुझे जो समस्या हो रही है, वह यह है कि मैं /etc/nginx/sites-availableडायरेक्टरी ढूंढ नहीं सकता ।

क्या इसे बनाने के लिए मुझे कुछ करना होगा? मुझे पता है कि नग्नेक्स ऊपर और चल रहा है क्योंकि मैं इसे ब्राउज़ कर सकता हूं।


यदि आप एक बड़ी कॉन्फ़िग फ़ाइल को छोटे में विभाजित करना चाहते हैं, तो आप इसे विभाजित करने के लिए मेरी स्क्रिप्ट का उपयोग कर सकते हैं: stackoverflow.com/a/38635284/1069083
rubo77

जवाबों:


354

मुझे लगता है कि नगीनेक्स अपने आप में अपने सेटअप में नहीं है, क्योंकि उबंटू-बनाए हुए पैकेज इसे डेबियन के अपाचे सेटअप की नकल करने के लिए एक सम्मेलन के रूप में करता है। यदि आप उसी सेटअप का अनुकरण करना चाहते हैं तो आप इसे स्वयं बना सकते हैं।

बनाएँ /etc/nginx/sites-availableऔर /etc/nginx/sites-enabledफिर httpब्लॉक को अंदर संपादित करें /etc/nginx/nginx.confऔर इस पंक्ति को जोड़ें

include /etc/nginx/sites-enabled/*;

बेशक, सभी फाइलें अंदर होंगी sites-available, और आप sites-enabledउन लोगों के लिए उनके अंदर एक सिमिलिंक बनाएंगे जिन्हें आप सक्षम करना चाहते हैं।


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

36
भगवान, मैं यह नहीं कह सकता कि मैंने यह पता लगाने के लिए कितनी खोज की। मैं अमेज़ॅन लिनक्स एएमआई रिलीज़ 2014.03 का उपयोग कर रहा हूं। यदि आप rpm फ़ाइलों से nginx स्थापित करते हैं (चाहे nginx 1.6.2 या nginx 1.7.5) ये निर्देशिका स्वचालित रूप से नहीं बनाई गई हैं, लेकिन कई nginx कॉन्फ़िगरेशन उदाहरण इनका उल्लेख करते हैं ... आपको आश्चर्य होता है कि आपका nginx सही तरीके से स्थापित हुआ है या नहीं।
so_mv

1
कूल थैंक्स, सिम्बल के बारे में कैसे? क्या मेरा वाक्यविन्यास सही है? यह शामिल बयान से नहीं मिल रहा है लगता है।
शून्य-और -२

7
मैंने इसे ठीक किया, नए सिरे से शुरू किया और इस तरह से लिंक बनाया: sudo ln -s /etc/nginx/sites-available/test.conf /etc/nginx/sites-enabled/test.confयकीन नहीं कि क्यों पूरे रास्ते में फर्क
पड़ा

1
बहुत बहुत धन्यवाद। स्रोत से nginx का निर्माण किया और महसूस नहीं किया कि ubuntu ने ऐसा किया।
सीन नॉरवुड

66

यदि आप एक और अधिक प्रत्यक्ष दृष्टिकोण, एक है कि नहीं के बीच symlinking साथ गड़बड़ करता है करना चाहते हैं तो /etc/nginx/sites-availableऔर /etc/nginx/sites-enabled, निम्न कार्य करें:

  1. अपनी nginx.conf फ़ाइल का पता लगाएँ। पर संभवत:/etc/nginx/nginx.conf
  2. Http ब्लॉक का पता लगाएं।
  3. Http ब्लॉक में कहीं, include /etc/nginx/conf.d/*.conf;यह लिखें nginx conf.dनिर्देशिका में किसी भी फाइल में खींचने के लिए कहता है जो अंत में है .conf। (मुझे पता है: यह अजीब है कि एक निर्देशिका इसमें हो सकती है .।)
  4. conf.dनिर्देशिका बनाएँ अगर यह पहले से मौजूद नहीं है (चरण 3 में पथ के अनुसार)। इसे सही अनुमति / स्वामित्व देना सुनिश्चित करें। रूट या www- डेटा।
  5. /etc/nginx/sites-availableडायरेक्टरी में अपनी अलग कॉन्फिग फाइलों को (जैसे आपके पास है ) मूव या कॉपी करें conf.d
  6. पुन: लोड करें या nginx को पुनरारंभ करें।
  7. आइसक्रीम कोन खाओ।

जब भी .confआप conf.dयहां से निर्देशिका में डालेंगे कोई भी फाइल तब तक सक्रिय हो जाएगी, जब तक आप नग्नेक्स को फिर से लोड / पुनरारंभ नहीं करते हैं।

नोट: यदि आप चाहें तो समवर्ती conf.dऔर sites-enabled+ sites-availableविधि का उपयोग कर सकते हैं । मुझे अपने देव बॉक्स पर परीक्षण करना पसंद है conf.d। सहानुभूति और अचिंत्य से अधिक तेज़ लगता है।


13
सहानुभूति "गड़बड़" की बात यह है कि आप कॉन्फ़िगर फ़ाइलों को संरक्षित कर सकते हैं और अभी भी वर्चुअल होस्ट को बहुत आसानी से अक्षम कर सकते हैं। यदि आप अपने दृष्टिकोण का उपयोग करते हैं, तो आपको फ़ाइलों को conf.d से बाहर ले जाना होगा जब आप किसी साइट को अक्षम करना चाहते हैं, जो मुझे नहीं लगता कि सहानुभूति को हटाने से आसानी से कम गड़बड़ है।
२१:४४

@bviktor मैं फिर सुनता हूं। मैं वास्तव में दोनों तरीकों का उपयोग करता हूं। मैंने इसे और अधिक थकाऊ पाया [जब परीक्षण कॉन्फ़िगर करता है] साइटों-उपलब्ध और साइटों-सक्षम डायर के बीच आगे और पीछे उछालने के लिए। अपने प्रोडक्शन एनवी में मैं सिमलिंकिंग का उपयोग करने की योजना बना रहा हूं।
elbowlobstercowstand

1
हाँ, मैं मानता हूँ, ln -s टाइप करना ../sites-available/...थकाऊ होता है जब सामान को जल्दी से
परखते हैं

@bviktor इसलिए टर्मिनल में टैब हिट करने में सक्षम होने के लिए एक पथ नाम लिखने और ऑटो-पूरा देखने की क्षमता के लिए धन्यवाद यह बात है। इसके बारे में कुछ समय के लिए नहीं पता था जब तक कि मैं इसका उपयोग करने वाले किसी व्यक्ति के साथ वीडियो नहीं देखता। मुझे लगा कि उन्होंने 300 wpm पर टाइप किया है! फिर मैंने पकड़ लिया। :)
एल्बोलोब्स्टर्कोस्टैंड

12
@bvktor केवल .conf एक्सटेंशन वाली साइटें शामिल हो रही हैं। यदि आप एक साइट को सक्षम नहीं करना चाहते हैं, तो साइट विन्यास फ़ाइल में .Disabled एक्सटेंशन जोड़ें। यह CentOS / Apache में मानक सम्मेलन है और यह Nginx पर भी लागू होगा।
1

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