1 개요

라라벨 로그 퍼미션 문제 해결라라벨 artisan 로그 퍼미션 문제 해결

2 문제상황

laravel/storage의 소유자(owner)를 www-data로 해두면, root와 www-data 모두 해당 폴더에 파일을 쓸 수 있으므로 문제가 없을 것 같았다.

**root@localhost:/laravel#** ll | grep storage
drwx------ 1 www-data www-data 4096 Oct 6 15:11 storage/
**root@localhost:/laravel#** cd storage/logs/
**root@localhost:/laravel/storage/logs#** ll
total 753452
drwx------ 1 www-data www-data 4096 Oct 15 22:15 ./
drwx------ 1 www-data www-data 4096 Oct 6 15:11 ../
-rwx------ 1 www-data www-data 14 Oct 6 15:06 .gitignore*
-rw-r--r-- 1 root root 85964708 Oct 13 23:59 laravel-2019-10-13.log
-rw-r--r-- 1 root root 353892590 Oct 14 23:59 laravel-2019-10-14.log
-rw-r--r-- 1 root root 331646133 Oct 15 22:29 laravel-2019-10-15.log

3 조치

**root@localhost:/laravel/storage/logs#** vi ../../config/logging.php
'daily' => [
            'driver' => 'daily',
            #'path' => storage_path('logs/laravel.log'),
            'path' => storage_path('logs/'.php_sapi_name().'/laravel.log'),
            'level' => 'debug',
            'days' => 14,
        ],
**root@localhost:/laravel/storage/logs#** ll
total 757272
drwx------ 1 www-data www-data 4096 Oct 15 22:34 ./
drwx------ 1 www-data www-data 4096 Oct 6 15:11 ../
-rwx------ 1 www-data www-data 14 Oct 6 15:06 .gitignore*
drwxr-xr-x 2 www-data www-data 4096 Oct 15 22:33 apache2handler/
drwxr-xr-x 2 root root 4096 Oct 15 22:34 cli/
-rw-r--r-- 1 root root 85964708 Oct 13 23:59 laravel-2019-10-13.log
-rw-r--r-- 1 root root 353892590 Oct 14 23:59 laravel-2019-10-14.log
-rw-r--r-- 1 root root 335551713 Oct 15 22:45 laravel-2019-10-15.log

→ 각 폴더를 만들어주지 않아도 알아서 만든다.→ 로그를 조회할 때도 따로 볼 수 있으니 더욱 좋다. 😄→ 웹서버를 통한 로그는 apache2handler 폴더에, artisan을 통한 로그는 cli 폴더에 남게 된다.