問題の説明:
PHP スクリプトを使用してファイルをローカルで操作することは成功しますが、サーバー上に配置することはできません。
Apache ログの表示:
#cd /var/log/httpd #tac error_log
表示:
cannot create directory '_TEST1': Permission denied
解決策:
1. apache によって構成されたユーザーとユーザー グループを確認します
#vi /etc/httpd/conf/httpd.conf
# # If you wish httpd to run as a different user or group, you must run # httpd as root initially and it will switch. # # User/Group: The name (or #number) of the user/group to run httpd as. # It is usually good practice to create a dedicated user and group for # running httpd, as with most system services. # User apache Group apache
ユーザーとグループは両方とも Apache であることがわかります。
2. 操作したいフォルダーのユーザーと権限を変更し、ユーザーをApacheの設定と同じに変更し、権限を755
#chown -R apache:apache your_folder #chmod -R 755 your_folder
3. SELINUX#を終了します。 ##
#vi /etc/selinux/config #SELINUX=enforcing #注释掉 #SELINUXTYPE=targeted #注释掉 SELINUX=disabled #增加 :wq! #保存退出 #setenforce 0 #使配置立即生效その他の関連チュートリアルについては、
php中文网 に注目してください。
以上がphp 操作ファイルに権限がないというメッセージが表示された場合はどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。