所有者:groupのフォルダ/ home/UploadContentをphpプロセスと同じグループとユーザーであるapache:apacheとして作成しました。私はchmodを使用して775へのアクセス許可を設定しました。これにより、PHPはアップロードされたファイルをこのディレクトリに書き込むことができます。私はそれを試して、それは私に同じ不十分なアクセス許可のエラーを与えた。所有者IDがユーザーIDと同じでもmove_uploaded_file()には不十分なアクセス許可があります
正確なエラーは「ストリームを開くことに失敗しました:許可が拒否されました」です。
私はかどうかをテストするために小さなPHPプログラムを書きました: $Owner = fileowner("/home/UploadContent/"); $Current = exec("whoami"); $Id = exec("id -u " . $Current); echo ($Owner . " is owner, " . $Id . " is user.");
この常に「48は、48ユーザーで、所有者です。」
これは、phpが書き込み、読み取り、および実行のための適切な権限を持っていることを暗示しますが、それでもエラーは発生しています。
[コメントから昇格]
SELinuxの問題のように聞こえます... bashプロンプトで 'setenforce 0'を実行してからスクリプトを再実行してみてください。これで問題が解決された場合は、プロセスが指定したフォルダにアクセスできるようにSELInuxを設定する必要があります。 'setenforce 1'でSELInuxを再び有効にすることができます。それに失敗すると、起動時にSELinuxが再び有効になります。 – Basic
また、wifh perm 777を試してください。所有者/グループなどを確認してください – Nick
Ok @Basic、setenforce 0を実行したときに動作しました。SELInuxを設定します。 – DeadMansMarch