最近Linuxに切り替えて直接LEMPを設定しようとしましたが、ほとんど管理していましたが、今は解決できない権限の問題が発生しました。ローカルWordPressサイトではファイルをアップロードできません。
私の設定
- php-fpmは私のユーザーとして実行されます。
- nginxはnginxユーザーとして実行されます。
- サイトは/home//Websites/example.comに保存されます。
これは地域開発にのみ当てはまります。
/home/my-user drwxr-xr-x
/home/my-user/ウェブサイト drwxrwxr-x
/home/my-user/Websites/example.com drwxrwxr-x
/home/my-user/Wbsites/example.com /wp-contentdrwxrwxr-x
すべてmy-user:my-userが所有しています。
アップロード以外はサイトが機能しています。
編集する:問題はSELinuxで発生したようです。アップロードの問題を解決するために何を有効にすべきかはまだわかりません。
ベストアンサー1
この問題はファイルシステムの権限とは関係ありませんが、selinuxがアップロードフォルダへの書き込みアクセスをブロックしているようです。
まず selinux を許可モードに設定します。これを行うには、rootとして実行してください。
setenforce 0
次に、次のreturnを実行して、コマンドが正しく適用されていることを確認してくださいPermissive
。
getenforce
これで、ローカルアップロードフォルダにファイルをアップロードできるようになりました。完了したら、selinuxログでエラーを確認してください。ログファイルは/var/log/audit/audit.logにあります。
アップロードしたフォルダのセキュリティコンテキストが正しくない可能性があります。次の出力を確認してください。
ls --context
アップロードフォルダに正しいセキュリティコンテキストがあることを確認する必要があります。このフォルダには、httpd_sys_rw_content_t
Webサーバーがディレクトリに書き込むことを可能にするコンテキストが必要です。