Wordpressを機能させようとしています。現在、このエラーメッセージが表示されています。
Could not create directory. /var/www/html/wp-content/upgrade/theme_name
テーマをアップロードしようとしたとき。これは、/var/www/html/wp-content/upgrade/
に設定された権限です
drwxrwxr-x 3 ec2-user Apache 4096 Jun 21 00:30 upgrade
chmod 777 upgrade
はエラーを解消します。しかし、それはベストプラクティスとは見なされていません。しかし、これもうまくいくと思います...なぜでしょうか?
上記のアクセス許可には、Webサーバーが含まれていない可能性があります。 Webサーバーに書き込みを許可するには、どのグループを使用すればよいですか?
(私のセットアップは、Amazon EC2、Amazon Linux AMI、httpd付きです)
Amazon EC2については何も知りませんが、次のことができるはずです。
次のようなコマンドを使用して、Apacheを実行しているユーザーの名前を取得します。
_ps aux | grep Apache # The username should be in the first column.
_
groups(1)
コマンドを使用して、このユーザーが属しているグループを取得します。
_groups [USERNAME]
_
Apacheグループ名を確認するには、次のコマンドラインメソッドを使用してみてください。
WWW_GROUP=`ps axo user,group,comm | egrep '(Apache|httpd)' | grep -v ^root | cut -d\ -f 2| uniq`
echo Apache group is: $WWW_GROUP
ユーザーを取得するには、次を確認します。 コマンドラインからApacheユーザーを判別する方法?
chmod 777にアップグレードすると、エラーが発生しなくなります。
まあ、その場合はls -ld /var/www/html/wp-content/upgrade/theme_name
は、作成者の資格情報を明らかにする必要があります。これは、正確なアクセス許可に使用できます。
そして、1777
(はどうかと言うと /tmp
)少なくとも、ファイルの所有者だけがリンクを解除できることが保証されているためです。