.Htpasswd पर एक उपयोगकर्ता जोड़ रहा है


90

मै इस्तेमाल कर रहा हूँ .htpasswd अपने सर्वर पर कुछ निर्देशिका को संरक्षित करने के लिए पासवर्ड हूं। हालाँकि, मैंने देखा कि हर बार मैं ऐसा करता हूं कि sudo htpasswd -c /etc/apache2/.htpasswd newuserमेरी वर्तमान सामग्री .htpasswdओवरराइट हो जाएगी। मेरी साइट की प्रत्येक निर्देशिका का अपना उपयोगकर्ता .htpasswd है।

मैं अपने पर एक नया उपयोगकर्ता जोड़ने के बजाय कैसे अधिलेखित नहीं कर सकता हूं .htpasswd?

जवाबों:


146

सटीक एक ही बात, -cविकल्प को छोड़ दें । यहाँ पर अपाचे के डॉक्स ।

htpasswd /etc/apache2/.htpasswd newuser

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


अहा! कभी नहीं सोचा था कि स्विच जवाब है, मेरी मासूमियत को क्षमा करें।
फिशक्रैकर

हालांकि, यह मुझे मौजूदा को संशोधित करने की अनुमति नहीं देगा .htpasswdयह -cस्विच के उपयोग पर जोर देता है ।
फिशक्रैकर

@fishcracker त्रुटि क्या है? htpasswd /path/to/file usernameपूरी तरह से वैध है (वैसे भी) और अपाचे डॉक्स पर पहला उदाहरण भी।
कॉर्बिन

मेरी गलती। मैं htpasswd -c /etc/apache2/.htpasswd newuserअपने CentOS सर्वर में करने की कोशिश कर रहा हूँ ! क्षमा करें, ध्यान नहीं दिया कि मैं गलत विंडो पर हूं। 5 मिनट में अपना उत्तर स्वीकार करेंगे। धन्यवाद!
फिशक्रैकर

18

FWIW, htpasswd -n usernameपरिणाम को सीधे stdout में आउटपुट करेगा, और फ़ाइलों को पूरी तरह से छूने से बचें।

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