在我的 Laravel 应用中,我使用 Nginx 作为服务器。Ubuntu 版本是 21.10
我还想使用 Laravel 的控制台 (Tinker) 来记录内容。当我设置为包含日志的文件夹www-data
的所有者时,我可以通过 查看我的应用程序,但我无法使用 Tinker 来记录信息,例如,因为我得到:storage
localhost
Log::debug("test");
UnexpectedValueException with message 'The stream or file
"/var/www/laravel-app/storage/logs/laravel.log" could not be
opened in append mode: Failed to open stream: Permission denied
storage
所以当我想使用 Tinker 时,我暂时将我的用户设置为 own :
sudo chown -R $USER:www-data storage
但是我无法查看我的应用程序,因为在尝试访问时出现与上述相同的错误localhost
。
我怎样才能让两个用户都拥有权限stoarge
?
答案1
您可以使用组。只需将这些用户添加到 www-data 组即可
sudo usermod -aG www-data user1
sudo usermod -aG www-data user2
确保该组具有读写权限:
chmod -r ug+rw path_of_folder_containing data
你可以检查一下ls -la
:
-rw------- 1 aUser aGroup 48 2. Apr 20:44 someFile #only user may read/write
-rw-r--r-- 1 aUser aGroup 48 2. Apr 20:44 someFile #user r/w, group and others only read
-rw-rw-r-- 1 aUser aGroup 48 2. Apr 20:44 someFile #user & group r/w, others only read
您应该注销并重新登录以使群组变更生效。