วิธีการแก้ไขข้อผิดพลาด: laravel.log ไม่สามารถเปิดได้?


186

ฉันค่อนข้างใหม่ที่ laravel จริงๆแล้วฉันกำลังพยายามสร้างโครงการแรกของฉัน ด้วยเหตุผลบางอย่างฉันยังคงได้รับข้อผิดพลาดนี้ (ฉันยังไม่ได้เริ่มเขียนโค้ดเลย)

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ไม่ได้ช่วยอะไรเลย

สิทธิ์


คุณแน่ใจหรือว่าคุณอยู่ในไดเรกทอรีที่ถูกต้องเมื่อเรียกใช้คำสั่ง chmod? ลอง chmod -R 755 / var / www / laravel / app / storage ผู้ใช้และกลุ่มตั้งค่าเป็นอะไร ลอง ls -al / var / www / laravel / app / storage
Ryan LaB

ผลลัพธ์เดียวกัน (ฉันได้อัปเดตโพสต์ดั้งเดิมของฉันเพื่อแสดงการอนุญาตของโฟลเดอร์)
FRR

: / ด้วยเหตุผลบางอย่างมันยังไม่ทำงาน ฉันไม่ได้พูดถึงมันมาก่อน แต่ฉันใช้คนจรจัด ดังนั้นโฟลเดอร์ www ของฉันอยู่บน VM (apache, php และทุกอย่างอื่นกำลังทำงานอยู่) ฉันไม่แน่ใจว่ามันเกี่ยวข้องกับอะไรหรือเปล่า แต่ฉันคิดว่าฉันจะพูดถึงมันในกรณี (ฉันสร้างโครงการของฉันภายในไม่ VM โดยใช้นักแต่งเพลง)
FRR

13
พวกที่แนะนำ 777 ลอง google วลีนี้: "production db_password filetype: env inurl: com"
Tarasovych

1
การปิดใช้งาน SELINUX ใช้งานได้สำหรับฉัน
Prakash P

คำตอบ:


307

ไม่เคยตั้งไดเรกทอรีที่ 777 คุณควรเปลี่ยนความเป็นเจ้าของไดเรกทอรี ดังนั้นตั้งค่าผู้ใช้ปัจจุบันของคุณว่าคุณเข้าสู่ระบบด้วยในฐานะเจ้าของและผู้ใช้เว็บเซิร์ฟเวอร์ (www-data, apache, ... ) เป็นกลุ่ม คุณสามารถลองสิ่งนี้:

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

จากนั้นตั้งค่าการอนุญาตไดเรกทอรีให้ลองทำดังนี้

chmod -R 775 storage
chmod -R 775 bootstrap/cache

ปรับปรุง:

ผู้ใช้และกลุ่มเว็บเซิร์ฟเวอร์ขึ้นอยู่กับเว็บเซิร์ฟเวอร์และระบบปฏิบัติการของคุณ เพื่อค้นหาว่าผู้ใช้และกลุ่มเว็บเซิร์ฟเวอร์ของคุณใช้คำสั่งต่อไปนี้อย่างไร สำหรับการใช้ nginx:

ps aux|grep nginx|grep -v grep

สำหรับ apache ใช้:

ps aux | egrep '(apache|httpd)'


4
ขอบคุณ! ในระยะสั้นคุณสามารถทำได้:sudo chown -R {your current user}:www-data storage bootstrap/cache
Ramesh Pareek

2
@RameshPareek คุณพูดถูก แต่ฉันแค่อยากจะชัดเจนมากขึ้น)
Hamid Parchami

1
มันไม่ได้ผลสำหรับฉัน chown: www-data: illegal group nameฉันเพิ่งได้รับ การตั้งค่าไดเรกทอรีเป็น 777 เป็นสิ่งเดียวที่ใช้ได้
Matt D

3
@MattD ผมคิดว่ากลุ่ม Apache บน mac คือลองนี้_www sudo chgrp -R _www bootstrap/cacheมันจะมีประโยชน์ที่จะดูที่โพสต์นี้: stackoverflow.com/a/6419695/2125114
Hamid Parchami

3
นี่ควรเป็นคำตอบที่เลือก 100% ยอมรับว่า sysadmins ไม่ควรอนุญาตให้เข้าถึงทุกสิ่งเพื่อหลีกเลี่ยงปัญหาที่แท้จริง
HyperionX

134

อย่าใช้ 777 สำหรับไดเรกทอรีบนเซิร์ฟเวอร์ที่ใช้งานจริงของคุณ แต่ในเครื่องของคุณเองบางครั้งเราต้องทำมากกว่า 775 เพราะ

chmod -R 775 storage

วิธี

7 - Owner can write
7 - Group can write
5 - Others cannot write!

หากเว็บเซิร์ฟเวอร์ของคุณไม่ทำงานเป็น Vagrant จะไม่สามารถเขียนได้ดังนั้นคุณจึงมี 2 ตัวเลือก:

chmod -R 777 storage

หรือเปลี่ยนกลุ่มเป็นผู้ใช้เว็บเซิร์ฟเวอร์ของคุณโดยสมมติว่าเป็นwww-data:

chown -R vagrant:www-data storage

ไม่จำเป็นต้องใช้ chmod ในกรณีของฉันเพราะมันถูกวางเรียบร้อยแล้ว แต่ใน Fedora 20 มันต้องการ:chown -R apache:apache laravelproject
misterjaytee

มีปัญหาในการติดตั้งโฟลเดอร์ผ่าน samba / คนจรจัด - chown -R vagrant:www-data storageทำเพื่อฉันด้วยขอบคุณ
ลูอิส

1
chmod -R 777 storage ใช้งานได้สำหรับฉัน ฉันลองเปลี่ยนกลุ่ม แต่ฉันก็ยังได้www-data: illegal group name
แมตต์ดี

57

ในการแก้ไขปัญหานี้คุณต้องเปลี่ยนความเป็นเจ้าของไดเรกทอรีเป็นผู้ใช้ unix ที่เว็บเซิร์ฟเวอร์ใช้

  1. ออกจาก VM
  2. ใช้คอนโซลไปที่โฟลเดอร์ซิงค์ของคุณ (คนจรจัด)
  3. sudo chown -R $ USER: ที่เก็บข้อมูล www-data
  4. chmod -R 775 ที่เก็บข้อมูล

แม้ว่าฉันจะสร้างโครงการภายใน VM โดยใช้ผู้ใช้ VM แต่โฟลเดอร์นั้นเป็นของผู้ใช้ในคอมพิวเตอร์จริง ดังนั้นเมื่อพยายาม

ตอนนี้มันใช้งานได้

ขอบคุณทุกคนที่ช่วยฉันหาสิ่งนี้ออกมา

แก้ไข:

ที่จริงแล้วมันยังไม่ทำงาน แต่ก็ยังทำให้ฉันมีปัญหา "สิทธิ์ถูกปฏิเสธ"

นี่คือสิ่งที่ฉันทำฉันแก้ไข Vagrantfile ของฉันเช่นนี้:

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

ฉันทำอย่างนั้น ... และฉันก็เป็นบ้า! ยังไม่ทำงาน ... laravel 5 ... เปลี่ยนชื่อไฟล์บันทึก laravel สร้างไฟล์ใหม่ ... ข้อผิดพลาดเดียวกัน
ied3vil

1
ฉันไม่มี config.vm.synced_folder เพราะฉันใช้ homestead ฉันจะแก้ไขปัญหานี้ได้อย่างไร
oleynikd

21
คุณไม่ควรใช้ 777 ทั้งหมดโดยเจตนา
IIllIIll

ฉันไม่เห็นปัญหาในการใช้ 777 ในโฟลเดอร์ที่ฉันรู้ว่ามีอะไรอยู่ข้างใน (โครงการตัวอย่างตัวอย่าง)
FRR

2
นี่ไม่ควรเป็นคำตอบที่ยอมรับได้อย่างแน่นอน มันน่ากลัว. ไม่เคยตั้งค่า 777 เคย
CGriffin

39

มันอาจจะเป็น SELinux (Centos, RedHat)

กำหนดสถานะของ SElinux บนเทอร์มินัล:

$ sestatus

หากสถานะถูกเปิดใช้งานให้เขียนคำสั่งเพื่อปิดการใช้งาน SElinux

$ setenforce Permissive

หรือคุณอาจรันคำสั่งนี้

$ sudo setenforce 0


6
นี่เป็นสิ่งเดียวที่ใช้งานได้คุณช่วยอธิบายสิ่งที่ทำไปได้ไหม
hack4mer

2
@ hack4mer คุณสามารถอ่านข้อมูลเพิ่มเติมเกี่ยวกับ seLinux en.wikipedia.org/wiki/Security-Enhanced_Linux
Turan Zamanlı

สิ่งประหลาดที่ฉันเคยเห็นทำไมนรกทำงานหลังจากค้นหามากกว่า 6 ชั่วโมง
Muhamad Yulianto

1
ทางออกเดียวที่ใช้ได้สำหรับฉัน .. ขอบคุณ แต่ปัญหากลับมาทุกครั้งที่เซิร์ฟเวอร์รีสตาร์ทคุณรู้วิธีทำให้ใช้งานได้แม้ว่าเซิร์ฟเวอร์จะรีสตาร์ทหรือไม่
Juan Angel

1
@JuanAngel คุณต้องปิดการใช้งานบริการอย่างถาวร เปิดด้วยเครื่องมือแก้ไข / etc / sysconfig / selinux แล้วเปลี่ยนคำสั่ง SELinux = บังคับใช้เป็น SELinux = ปิดใช้งาน
Turan Zamanlı

32

คุณจำเป็นต้องปรับสิทธิ์ของและstoragebootstrap/cache

  • cd เข้าสู่โครงการ Laravel ของคุณ
  • sudo chmod -R 755 storage
  • sudo chmod -R 755 bootstrap/cache

คุณสามารถลอง 777 ได้หาก 755 ไม่ทำงาน แม้ว่า 777 จะไม่ปลอดภัย!

ขึ้นอยู่กับการตั้งค่าเว็บเซิร์ฟเวอร์ของคุณคุณอาจเฉพาะเจาะจงมากขึ้นเกี่ยวกับการอนุญาตของคุณและให้สิทธิ์เฉพาะกับผู้ใช้เว็บเซิร์ฟเวอร์ของคุณ Google WEB SERVER NAME Laravel file permissionsสำหรับข้อมูลเพิ่มเติม

ในช่วงเวลาของการเขียนนี้เป็นสำหรับ Laravel 5.4


14

เพิ่ม composer.json

"scripts": {
    "post-install-cmd": [
          "chgrp -R www-data storage bootstrap/cache",
          "chmod -R ug+rwx storage bootstrap/cache"
     ]
}

หลังจาก composer install


12

เรียกใช้คำสั่งต่อไปนี้และคุณสามารถเพิ่มsudoเมื่อเริ่มต้นคำสั่งขึ้นอยู่กับระบบของคุณ:

chmod -R 775 storage/framework
chmod -R 775 storage/logs
chmod -R 775 bootstrap/cache 

1
อย่าใช้ 777 ด้วยสิทธิ์ 777 คุณอนุญาตให้ทุกคนที่มีการเชื่อมต่อเข้าถึงไฟล์หรือไดเรกทอรีด้วยสิทธิ์เหล่านั้น พวกเขาอาจเปลี่ยนแปลงพวกเขาในวิธีที่พวกเขาเลือกรวมถึงประสงค์ร้าย เหตุการณ์แฮ็คบัญชีจำนวนมากเกิดจาก 777 สิทธิ์
Odyssee

8

สำหรับผู้ใช้ Centos 7 ทุกคนในบริบท Laravel ไม่จำเป็นต้องปิดการใช้งาน Selinux เพียงเรียกใช้คำสั่งเหล่านี้:

yum install policycoreutils-python -y # might not be necessary, try the below first

semanage fcontext -a -t httpd_sys_rw_content_t "/var/www/html/laravel/storage(/.*)?" # add a new httpd read write content to sellinux for the specific folder, -m for modify
semanage fcontext -a -t httpd_sys_rw_content_t "/var/www/html/laravel/bootstrap/cache(/.*)?" # same as the above for b/cache

restorecon -Rv /var/www/html/ # this command is very important to, it's like a restart to apply the new rules

สุดท้ายตรวจสอบให้แน่ใจว่าโฮสต์, ips และโฮสต์เสมือนของคุณทั้งหมดนั้นถูกต้องสำหรับการเข้าถึงระยะไกล

Selinux มีจุดประสงค์เพื่อ จำกัด การเข้าถึงแม้กระทั่งผู้ใช้รูทดังนั้นอาจมีการเข้าถึงเฉพาะสิ่งที่จำเป็นอย่างน้อยในภาพรวมทั่วไปมันมีความปลอดภัยเป็นพิเศษปิดการใช้งานไม่ใช่วิธีปฏิบัติที่ดีมีการเชื่อมโยงมากมายเพื่อเรียนรู้ Selinux แต่สำหรับสิ่งนี้ ในกรณีที่ไม่จำเป็นต้องใช้


แม้ว่าลิงก์นี้อาจตอบคำถามได้ดีกว่าหากรวมส่วนสำคัญของคำตอบไว้ที่นี่และให้ลิงก์สำหรับการอ้างอิง คำตอบสำหรับลิงก์เท่านั้นอาจไม่ถูกต้องหากหน้าเว็บที่เชื่อมโยงมีการเปลี่ยนแปลง - จากการทบทวน
Patrick Mevzek

การเชื่อมโยงนั้นชัดเจนมากไม่จำเป็นต้องมีกลไกดังกล่าวแม้แต่ในส่วนเฉพาะสำหรับบริบท Laravel SELinux ฉันคิดว่าความคิดเห็นของคุณควรได้รับการสนับสนุนจากตรรกะมากกว่าเพียงแค่กฎง่ายๆ ในระหว่างนี้คุณได้ลดคำตอบที่น่าจะเป็น 99% ในการแก้ไขปัญหาโดยไม่ปฏิบัติตามแนวทางปฏิบัติที่ไม่ดีเช่นปิดใช้งาน Selinux
Daniel Santos

ไม่ใช่ปัญหาที่จะต้องชัดเจนหรือไม่ แนวคิดของเว็บไซต์นี้คือมันมีข้อมูลที่เกี่ยวข้องทั้งหมดดังนั้นโดยการอ่านคำตอบที่เราได้รับทั้งหมด ลิงก์ภายนอกอาจเน่าและจากนั้นคำตอบจะไร้ค่า นี่คือคำอธิบายในศูนย์ช่วยเหลือที่stackoverflow.com/help/how-to-answer : "สนับสนุนลิงก์ไปยังแหล่งข้อมูลภายนอก แต่โปรดเพิ่มบริบทรอบลิงก์เพื่อให้ผู้ใช้เพื่อนของคุณจะมีความคิดว่ามันคืออะไรและทำไมมันถึงอยู่ที่นั่น . อ้างอิงส่วนที่เกี่ยวข้องมากที่สุดของลิงค์สำคัญเสมอในกรณีที่เว็บไซต์เป้าหมายไม่สามารถเข้าถึงหรือออฟไลน์ได้อย่างถาวร "
Patrick Mevzek

คำถามของคุณถูกตั้งค่าสถานะเพื่อตรวจสอบนั่นคือทั้งหมด และมันขัดแย้งกับสิ่งที่เขียนในศูนย์ช่วยเหลือที่ฉันอ้างถึง คำตอบทั้งหมดที่มีลิงก์เพียงแค่ไม่มีคำอธิบายใด ๆ ถูกลบและแม้แต่ลบออก รู้สึกอิสระที่จะแก้ไขคำตอบของคุณเพื่อให้ส่วนที่เกี่ยวข้องของคำอธิบายที่นี่ และคุณมีอิสระที่จะโหวตคำตอบทั้งหมดที่คุณคิดว่าไม่ดี คุณสามารถดูได้จากลิงค์รีวิวที่ฉันไม่ได้คนเดียวในการแนะนำคำตอบของคุณที่จะปิด ไม่ได้อยู่ในข้อดีทางเทคนิคเพียงเพราะลิงค์ไม่เพียงพอ
Patrick Mevzek

ขอบคุณสำหรับความกระจ่างฉันไม่ทราบแนวทางที่มีอยู่หรือแม้ว่าในกระบวนการลงทะเบียนคุณจะได้รับคำแนะนำในการอ่านแหล่งข้อมูลฉันจำไม่ได้ สิ่งที่คุณพูดอาจเป็นจริงลิงก์อาจเน่า แต่คำตอบสามารถเข้าถึงได้โดยไม่ต้องพยายามไม่ว่าฉันจะแก้ไขหรือไม่
Daniel Santos

6

ถ้าคุณใช้คำสั่ง

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

ถ้าคุณใช้ GUI

ก่อนอื่นให้ไปที่โครงการและคลิกขวาบนที่เก็บข้อมูลและตรวจสอบคุณสมบัติแล้วไปที่แท็บการอนุญาต

ป้อนคำอธิบายรูปภาพที่นี่

เปลี่ยนการอนุญาตโดยใช้รหัสด้านล่าง

sudo chmod -R 777 storage

จากนั้นคุณสมบัติไฟล์ของคุณอาจเป็น

ป้อนคำอธิบายรูปภาพที่นี่

จากนั้นตรวจสอบการตั้งค่าของคุณและรันคำสั่ง laravel มันจะทำงาน :)


ขอบคุณ yoouuuuuu
viniciussvl

5

ใน Laravel คุณควรตั้ง ACL storageและcacheไดเรกทอรีเพื่อให้ผู้ใช้เว็บเซิร์ฟเวอร์สามารถอ่าน / เขียนในไดเรกทอรี เปิดเทอร์มินัลใหม่และรันต่อไปนี้:

HTTPDUSER=$(ps axo user,comm | grep -E '[a]pache|[h]ttpd|[_]www|[w]ww-data|[n]ginx' | grep -v root | head -1 | cut -d\  -f1)

sudo setfacl -dR -m u:"$HTTPDUSER":rwX -m u:$(whoami):rwX bootstrap/cache storage/
sudo setfacl -R -m u:"$HTTPDUSER":rwX -m u:$(whoami):rwX bootstrap/cache storage/

อ้างอิง:

https://symfony.com/doc/3.4/setup/file_permissions.html#using-acl-on-a-system-that-supports-setfacl-linux-bsd

https://linux.die.net/man/1/setfacl


5

อาจจะช้า แต่อาจช่วยใครบางคนการเปลี่ยนการอนุญาตไดเรกทอรีให้กับฉัน

สมมติว่าโครงการ Laravel ของคุณอยู่ใน/var/www/html/ไดเรกทอรี

cd /var/www/html/

จากนั้นเปลี่ยนการอนุญาตของstorage/และbootstrap/cache/ไดเรกทอรี

sudo chmod -R gu+w storage/
sudo chmod -R guo+w storage/
sudo chmod -R gu+w bootstrap/cache/
sudo chmod -R guo+w bootstrap/cache/

2

วิธีนี้เป็นวิธีเฉพาะสำหรับ laravel 5.5

คุณต้องเปลี่ยนการอนุญาตเป็นโฟลเดอร์ไม่กี่โฟลเดอร์: chmod -R -777 storage / logs chmod -R -777 storage / framework สำหรับโฟลเดอร์ด้านบน 775 หรือ 765 ไม่ทำงานสำหรับโครงการของฉัน

chmod -R 775 bootstrap/cache 

นอกจากนี้กรรมสิทธิ์ในโฟลเดอร์โครงการควรเป็นดังนี้ (ผู้ใช้ปัจจุบัน) :( ผู้ใช้เว็บเซิร์ฟเวอร์)



1

ฉันไม่กระตือรือร้นที่จะเปลี่ยนการอนุญาตของโฟลเดอร์เป็น 777 นี่คือวิธีที่ฉันแก้ไขปัญหานี้

ก่อนอื่นฉันเปลี่ยนผู้ใช้ที่ใช้งานเว็บเซิร์ฟเวอร์บนเครื่องของฉัน (ฉันเรียกใช้ nginx แต่ใช้หลักการได้ทุกที่):

$> sudo vim /etc/nginx/nginx.conf
user <my_user> #inside nginx.conf
service nginx reload

หลังจากนั้นฉันสร้างindex.phpไฟล์อื่นภายใต้public/โฟลเดอร์เพื่อค้นหาว่าใครกำลังใช้งานเวอร์ชัน php-fpm ของฉันและฉันจะไปเปลี่ยนอะไร:

<?php
phpinfo();
?>

โหลดหน้านี้www-dataซ้ำฉันพบว่าเป็นผู้ใช้ (ภายใต้ส่วนสภาพแวดล้อม) ฉันพบว่าฉันใช้งาน php 7.1 อยู่ ฉันเปลี่ยนผู้ใช้ต่อไป:

$> sudo vim /etc/php/7.0/fpm/pool.d/www.conf 
#Look for www-data or the following variables: user, group, listen.user, listen.group.

ในที่สุดฉันให้สิทธิ์ต่อไปนี้กับโฟลเดอร์:

sudo chmod -R 775 ./storage/

ตอนนี้ฉันทำให้แน่ใจว่าฉันเป็นเจ้าของโฟลเดอร์โดยใช้วิ:

ls -al

หากคุณตั้งค่าผู้ใช้เซิร์ฟเวอร์และผู้ใช้ php-fpm ให้กับตัวเองและโฟลเดอร์เป็นของ root เช่นคุณจะต้องเจอกับปัญหานี้ สิ่งนี้สามารถเกิดขึ้นได้หากคุณทำsudo laravel new <project>ตามรูท ในกรณีนั้นตรวจสอบให้แน่ใจว่าคุณใช้chownคำสั่งซ้ำในโครงการของคุณเพื่อเปลี่ยนการuser:groupตั้งค่า ในกรณีเริ่มต้นส่วนใหญ่www-dataคือการตั้งค่าหลักสำหรับเซิร์ฟเวอร์และ php ในกรณีนั้นมันเป็นเรื่องของการทำให้แน่ใจว่าโฟลเดอร์ไม่www-dataสามารถเข้าถึงได้

โครงการของฉันถูกตั้งค่าในไดเรกทอรีบ้านของฉัน บน Ubuntu 16.04 และ Laravel 5.5


1

ลองนี้

  1. cd / var / www / html
  2. setenforce 0
  3. บริการ httpd เริ่มต้นใหม่

คุณช่วยอธิบายสิ่งนี้ได้ไหม?
Idiotic มากขึ้น

1
ไม่จำเป็นต้องเปลี่ยนไดเรกทอรีที่จะใช้setenforceแต่ในกรณีใด ๆ มันผิดที่จะปิดการใช้งาน SELinux อย่างสมบูรณ์เพื่อแก้ไขปัญหาการอนุญาตหนึ่งรายการ
Patrick Mevzek

0

ในกรณีของฉันโดยเฉพาะฉันได้สร้างไฟล์ปรับแต่งและแคชไว้ในbootstrap/cache/ไดเรกทอรีดังนั้นขั้นตอนของฉันอยู่ที่:

  1. ลบไฟล์แคชที่สร้างขึ้นทั้งหมด: rm bootstrap/cache/*.php
  2. สร้างlaravel.logไฟล์ใหม่และใช้การอัปเดตการอนุญาตบนไฟล์โดยใช้:

    • chmod -R 775 storage

0

(บนUbuntu ): สามารถแก้ไขได้ใน 2 ขั้นตอนง่าย ๆ :

$ sudo chmod -R 777 storage 

และ

$ sudo service apache2 restart

ขั้นตอนที่ 3: นำเซิร์ฟเวอร์ของคุณและ / หรือผู้ใช้ของคุณแฮ็คเพราะคุณได้เปิดไฟล์ไปทั่วโลก
miken32



-1

ข้อผิดพลาดนี้สามารถแก้ไขได้โดยการปิดการใช้งานลินุกซ์

ตรวจสอบว่าได้เปิดใช้งาน

sestatus

คุณลอง ..

setenforce 0


5
"โดยปิดการใช้งานLinux "? มันไปไกลเกินไป :-)!
Patrick Mevzek

-1

สำหรับข้อผิดพลาดนี้:

ข้อผิดพลาดในตัวจัดการข้อยกเว้น: ไม่สามารถเปิดสตรีมหรือไฟล์ "/var/www/laravel/app/storage/logs/laravel.log": ไม่สามารถเปิดสตรีม: ไม่สามารถเปิดสตรีม: การอนุญาตถูกปฏิเสธใน / var / www / laravel / bootstrap / รวบรวม .php: 8423

ใช้คำสั่งนี้ใน terminal:

sudo chmod -R 777 storage

2
เลวร้ายเกินไปสำหรับการผลิต env
Ariful Haque

-1

แก้ไขปัญหาของฉันด้วยคำสั่งนี้ในเซิร์ฟเวอร์ 7.6 centos

chcon -R -t httpd_sys_content_t $SITE_PATH

chcon -R -t httpd_sys_rw_content_t $SITE_PATH
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.