2013-05-16 14 views
6

के लिए अस्वीकार कर दिया गया है, मैं उबंटू, अपाचे आदि का उपयोग करके अपना वीएम चलाने के लिए वानर का उपयोग कर रहा हूं। यह मेरे ओएसएक्स होस्ट पर चल रहा है।Vagrant vm + apache अनुमति mkdir()

सब कुछ ठीक काम करता है जब तक कि मेरा PHP अनुप्रयोग फ़ोल्डर बनाने, उस फ़ोल्डर में फ़ाइलों आदि बनाने की कोशिश करता है। मुझे अनुमति अस्वीकार कर दी गई है। योनि फ़ाइल के प्रावधान/विन्यास पर मुझे क्या याद आ रही है?

+0

आप अपने Vagrantfile पोस्ट कर सकते हैं हमें देखने के लिए। मैं PHP dev के लिए Vagrant का उपयोग करता हूं और – fullybaked

उत्तर

1

आप आवारा बॉक्स में अपाचे उपयोगकर्ता जो आम तौर पर www-डेटा है ... ssh करने के लिए, फ़ोल्डर है कि PHP में लिखने के लिए कोशिश कर रहा है पर मालिक की स्थापना की और प्रयास करने की आवश्यकता:

sudo chown www-data:www-data <dirname> 

कि काम करना चाहिए ... यदि ऐसा होता है तो बस उस प्रावधानकर्ता को जो भी आप उपयोग कर रहे हैं उसे जोड़ दें।

+1

Yep की सहायता करने में सक्षम हो सकता है, और एक वैकल्पिक (लेकिन समान) दृष्टिकोण अपाचे को योनि उपयोगकर्ता के रूप में चलाने के लिए है। मैंने इसे सफलतापूर्वक किया है। – Jonathan

+3

जोनाथन इसे उत्तर देने के लिए आसान होगा –

20

इस मामले में, यदि आप Vagrant + Apache2 का उपयोग कर रहे हैं।

समाधान है:

  1. संपादित /etc/apache2/apache2.conf;
  2. के लिए खोज उपयोगकर्ता और समूह निर्देशों
  3. बदलें करने के लिए इन पंक्तियों:

    User vagrant 
    Group vagrant 
    
  4. रन sudo apache2 restart;

www/डेटा (apache उपयोगकर्ता) में निर्देशिका/मालिक को बदलने के लिए संभव नहीं है;

वैसे भी, यह मेरे लिए काम करता है।

+1

यही वह है जो मैंने किया था। मुझे सत्र डेटा फ़ोल्डर पर समूह को बदलने की भी आवश्यकता है ताकि PHP सत्र डेटा (सेंटोस पर) को सही ढंग से पढ़/लिख सके: 'chown root: vagrant/var/lib/php/session'। मैंने उस सत्र फ़ोल्डर में मौजूदा सत्र हटा दिया, और उसके बाद सब ठीक काम किया। – chris

+0

यह मेरे लिए काम करता है, ओएसएक्स 10.9.4 पर डेबियन 7 वीएम –

+0

कौन सा अपाचे? मेजबान मशीन या अतिथि वीएम पर एक? – AgmLauncher

3

संपादित Vagrantfile

config.vm.synced_folder "./", "/var/www", owner: "www-data", group: "www-data"