我正在Docker上安装一个新的Laravel。
当我运行容器并尝试从浏览器访问laravel应用程序时,我会得到laravel在屏幕上抛出的文件权限错误。
UnexpectedValueException
The stream or file "/var/www/html/storage/logs/laravel-2019-02-24.log" could not be opened: failed to open stream: Permission denied
所以,如果我在流动的容器里
sudo chown www-data:www-data -R /var/www/html/
并将文件的所有权切换到
www-data
用户ErrOS已经消失,我可以看到默认页面。问题是我无法编写/编辑应用程序的任何文件,也无法在代码库中进行更改。
如果我
sudo chown -R lykos:lykos ./application // the folder that my laravel app lives in
从本地终端(即不是通过运行的容器),我可以编辑文件,但文件权限的错误再次显示。
我怎么解决这个问题?顺便说一句,我在Linux上,所以我认为这个错误不会发生在Windows或Mac用户身上。我也想尽量避免
chmod 777
不建议作为适当的解决方案