अपाचे, पृष्ठभूमि में चलने वाला एक कार्यक्रम है। अपाचे मूल रूप से उपयोगकर्ता root(जिसे भी कहा जाता है root-process) द्वारा शुरू किया गया है । यह root-processकई बाल प्रक्रियाओं को लॉन्च करता है जो क्लाइंट अनुरोधों को संभालते हैं। सुरक्षा कारणों से, बच्चे की प्रक्रिया उपयोगकर्ता द्वारा नहीं rootबल्कि न्यूनतम विशेषाधिकार वाले उपयोगकर्ता के रूप में चलाई जाती है । आमतौर पर इस उपयोगकर्ता का नाम apacheया है www-data।
अपाचे v1 के लिए यह क्या उपयोगकर्ता है यह जानने के लिए:
ps -ef | grep httpd | grep -v grep
या अपाचे v2 के लिए:
ps -ef | grep apache | grep -v grep
Apache 2 का परिणाम कुछ इस प्रकार होगा:
जड़ 5001 1 0 07:21? 00:00:00 / usr / sbin / apache2 -k शुरू
www-डेटा 5021 5001 0 07:21? 00:00:00 / usr / sbin / apache2 -k शुरू
www-डेटा 5022 5001 0 07:21? 00:00:00 / usr / sbin / apache2 -k शुरू
www-डेटा 5023 5001 0 07:21? 00:00:00 / usr / sbin / apache2 -k शुरू
इस मामले में उपयोगकर्ता / समूह है www-data
इसलिए, वेबसर्वर द्वारा एक निर्देशिका को लिखने योग्य बनाने के लिए हमें अपाचे के मालिक या समूह को निर्देशिका के मालिक या समूह को सेट करना होगा और इसके लिए लिखित अनुमति को सक्षम करना होगा। आमतौर पर, हम अपाचे समूह ( apacheया `www-डेटा या जो बच्चे प्रक्रियाओं को लॉन्च करने के लिए उपयोग किया जाता है) से संबंधित निर्देशिका सेट करते हैं और समूह के लिए लिखने की अनुमति सक्षम करते हैं।
chgrp www-data /path/to/mydir
chmod g+w /path/to/mydir
( ऊपर दिए www-dataगए psकमांड के साथ आपको जो नाम मिला है)।
के बारे में:
2) मुझे ऐप / रनटाइम डायरेक्टरी को वेब-राइट करने के लिए भी कहा गया है। क्या यह अपाचे के समान है?
हां, यह एक निर्देशिका है जिसे आपको समूह अपाचे की उम्मीद करने के लिए लिखने योग्य बनाने की आवश्यकता है। संभवतः यह कहीं न कहीं अंदर होगा /var/www/और इसे /etc/apache2/sites-enabled// या में वर्चुअल होस्ट के रूप में सेट किया गया है/etc/apache2/sites-available