Grav cmsの使用に権限の問題があります。 Grav ファイルシステムには、キャッシュフォルダへの書き込みアクセスが必要です。重力サイトを持つストレージデバイスは、それをホストするWebサーバー(nginx)以外のサーバーに接続されている外部USBドライブにあります。 WebサーバーはSambaを介して接続され、fstabを使用してマウントされます。 USBストレージドライブに接続してr+w+execできます。ところで、ブラウザを介してウェブサイトにアクセスすると、500、黒い画面、権限拒否エラーが発生します。
Server Error
Sorry, something went terribly wrong!
0 - The directory "/mnt/www/ktravel/cache/doctrine/6333572e" does not exist and could not be created.
これは、uidがwww-dataでguidがlogInUserのfstabファイルの行です。
//192.168.1.25/www /mnt/www cifs guest,rw,file_mode=0775,dir_mode=0775,uid=33,gid=1001 0 0
フォルダ内の権限です。
ls -ls
total 12288
1024 -rwxrwxr-x 1 www-data ws1 138329 Dec 7 07:15 CHANGELOG.md
1024 -rwxrwxr-x 1 www-data ws1 3216 Dec 7 07:15 CODE_OF_CONDUCT.md
1024 -rwxrwxr-x 1 www-data ws1 7098 Dec 7 07:15 CONTRIBUTING.md
1024 -rwxrwxr-x 1 www-data ws1 1071 Dec 7 07:15 LICENSE.txt
1024 -rwxrwxr-x 1 www-data ws1 6701 Dec 7 07:15 README.md
0 drwxrwxr-x 2 www-data ws1 0 Dec 7 07:15 assets
0 drwxrwxr-x 2 www-data ws1 0 Mar 1 2018 backup
0 drwxrwxr-x 2 www-data ws1 0 Dec 7 07:15 bin
0 drwxrwxr-x 2 www-data ws1 0 Dec 7 07:18 cache
1024 -rwxrwxr-x 1 www-data ws1 3848 Dec 7 07:15 composer.json
1024 -rwxrwxr-x 1 www-data ws1 200025 Dec 7 07:15 composer.lock
0 drwxrwxr-x 2 www-data ws1 0 Aug 9 15:59 git
0 drwxrwxr-x 2 www-data ws1 0 Dec 7 07:17 images
1024 -rwxrwxr-x 1 www-data ws1 1690 Dec 7 07:15 index.php
1024 -rwxrwxr-x 1 www-data ws1 74 Oct 30 11:55 info.php
0 drwxrwxr-x 2 www-data ws1 0 Jul 6 10:21 logs
1024 -rwxrwxr-x 1 www-data ws1 76 Dec 7 07:15 now.json
1024 -rwxrwxr-x 1 www-data ws1 197 Feb 15 2018 robots.txt
1024 -rwxrwxr-x 1 www-data ws1 19 Dec 22 12:10 setup.php
0 drwxrwxr-x 2 www-data ws1 0 Dec 7 07:15 system
0 drwxrwxr-x 2 www-data ws1 0 Dec 7 07:15 tmp
0 drwxrwxr-x 2 www-data ws1 0 Dec 1 2018 user
0 drwxrwxr-x 2 www-data ws1 0 Dec 7 07:15 vendor
0 drwxrwxr-x 2 www-data ws1 0 Dec 7 07:15 webserver-configs
答え1
@Nasir Rileyが提起したこの質問は私を考えさせました。
As it is mounted via samba, do the smb permissions on the machine where the USB drive is located allow the www-data user to write to it?
私の答えはいいえです。
私のsmb.confファイルでこの行にユーザーをwww-data
追加しました。ws1
www-data
Web サーバーからの書き込みアクセスを許可します。
ws1
Windowsで書き込み権限を許可します。
[www]
comment = websites
path = /mnt/www
force user = www-data
force group = ws1
writeable = yes
browseable = yes
public = yes
create mask = 0775
directory mask = 0775
guest ok = yes
guest only = yes