私は に取り組んでいますDebian10 with php8 fpm + apache2
。グループ を持つ新しいユーザーを作成しusername:username
、このユーザーのホームディレクトリを に設定しました。
/home/username/www
もちろん、私はchmod -R
すべてのフォルダとファイルを持っていますusername:username
。ファイルがwww-dataだった頃は/var/html
つまり、キャッシュ フォルダーを書き込むための小さなスクリプトがあるのですが、フォルダーを username:username に chmod すると機能しません。フォルダーを www-data に chmod した場合にのみ機能しますか?
キャッシュフォルダをchown 755にすると、所有者www-data
がusername
username
のような書き込み権限を許可することは可能ですかwww-data
?
PS: ユーザー名は実際のユーザー名の例です
答え1
あ可能セキュリティ上の理由から読み取り専用アクセスと、必要な場合にのみ書き込みアクセスを許可しusername
ながら、制御できるようにするアプローチ:www-data
username
所有者およびwww-data
グループとして設定chown -R username:www-data /home/username/www
所有者にフルアクセス (読み取り/書き込み/実行: 7) を付与し、グループに読み取り専用アクセス (読み取り/実行: 5) を付与します。
Other
このグループにはアクセス権がありません (0)。chmod -R 750 /home/username/www
www-data
必要な場所に書き込みアクセス権を付与します。chmod -R 770 /home/username/www/path/writable/by/webserver
Web サーバーによって作成されたファイルは、Web サーバー自体 ( ) によって完全に所有されますwww-data:www-data
が、ディレクトリ所有者 ( username
) は引き続きファイルを移動できます。
答え2
デフォルトでは、PHP-FPM をインストールすると、ユーザーとして実行される単一のプールがインストールされますwww-data
。 を適切なユーザーに変更するとuser
、group
スクリプト/etc/php/8.0/fpm/pool.d/www.conf
はユーザーとして実行され、www-data
書き込み権限は不要になります。
デフォルトでは、設定には次の 2 行が含まれます。
user = www-data
group = www-data
これらの行を次の行に置き換えます。
user = username
group = username
FPMデーモンを再起動します
service php8.0-fpm restart