اذهب إلى المحتوى

السؤال

نشر

بعد إنشاء مشروع جديد في لارافيل ظهر لدي الخطأ التالي:

Error in exception handler: The stream or file "/var/www/laravel/app/storage/logs/laravel.log" could not be opened: failed to open stream: Permission denied in /var/www/laravel/bootstrap/compiled.php:8423

حاولت تغيير الصلاحيات على المجلّد بهذا الشكل:

chmod -R 775 storage

ولكن لم استطع حل المشكلة، ماهو الحل؟

Recommended Posts

  • 0
نشر

عند ظهور هذا الخطأ يجب عليك تغيير الملكية على مجلّد المشروع، أي يجب عليك وضع المستخدم الذي قمت بتسجيل الدخول منه إلى النظام كمالك لهذا المجلّد وخادم الويب www-data أو apache ضمن المجموعة، كالتالي:

sudo chown -R $USER:www-data storage

sudo chown -R $USER:www-data bootstrap/cache

sudo chown -R $USER:www-data bootstrap/logs 

والصلاحيات على المجلّد:

chmod -R 775 storage

chmod -R 775 bootstrap/cache

ولكن تختلف المجموعات لخادم الويب والمستخدم تبعاً لنظام التشغيل لديك، لمعرفتها يمكنك إجراء الأمر التالي على nginx:

ps aux|grep nginx|grep -v grep

أما في apache:

ps aux | egrep '(apache|httpd)'

ملاحظة: لا يجب إعطاء صلاحيات أكثر من 775، فعلى سبيل المثال إعطاء صلاحيات من الشكل 777 عند نشر المشروع قد يسبب بعض المشاكل الأمنية. والصلاحيات 775 تكفي ومعناها كالتالي:

7 - المالك يستطيع الكتابة
7 - المجموعة تستطيع الكتابة
5 - وأي شيء غيرهم لا يستطيع الكتابة

وفي حال لم يتم حل المشكلة، يمكن التجربة بتعديل الملف Vagrant كالتالي:

config.vm.synced_folder "./app","/var/www/", create:true,
:owner => "vagrant",
:group => "www-data",
:mount_options => ["dmode=775","fmode=664"]

 

  • 0
نشر

لا تستخدم أبدًا صلاحيات 777 للأدلة على خادمك المباشر, ولكن على جهازك الخاص ، نحتاج أحيانًا إلى القيام بأكثر من صلاحيات 775, لأن 

chmod -R 775 storage

7 - يمكن للمالك الكتابة
7 - المجموعة تستطيع الكتابة
5 - لا يستطيع الآخرون الكتابة

إذا كان خادم الويب الخاص بك لا يعمل مثل Vagrant, فلن يتمكن من الكتابة إليه, لذلك لديك خياران

chmod -R 777 storage

أو قم بتغيير Group إلى مستخدم خادم الويب الخاص بك, بافتراض أنها www-data:

chown -R vagrant:www-data storage

 

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...