画像をフォルダーにアップロードする PHP スクリプトがあります。
アップロード フォルダーには次の権限があります。
drwxrwxr-- 4 user user 4096 2010-06-02 16:20 temp_images
これらの権限があれば、ファイルをフォルダーにアップロードするのに十分ではないでしょうか?
しかし、これは機能しません。
権限を 777 に設定した場合にのみ機能します。
「user」が www-data グループに追加されましたが、まだうまくいきません。
理由について何か考えはありますか?
答え1
フォルダはユーザーとグループによって所有されていますユーザーApacheが別のアカウントで実行されている場合は、おそらくwwwデータApacheはそこに書き込むことができません。ユーザーアカウントにwwwデータグループはユーザーフォルダに書き込むことが許可されているwwwデータグループは所有しており、rwに設定されています。apacheにフォルダに書き込ませたい場合は、グループユーザーApacheサービスアカウントを所有しているメンバーである必要がありますユーザーグループ。
答え2
safe_mode がオンの場合、ユーザーではなくグループでチェックが行われる safe_mode_gid をオンに設定しない限り、ユーザーは apache/php ユーザーである必要があります。
答え3
ディレクトリの所有者は、Web サーバーの有効なユーザー ID である必要があります。所有権を変更して、権限を 700、750、または 755 に設定してみてください。
chown www-data temp_images