私のコンピュータには最新バージョンのApache2 / PHP / MYSQLがインストールされています。
そのディレクトリ内にすべてのWordPressファイルを含むディレクトリを/src/www/htdocs
作成しました。wordpress
wp-config
その後、Webインターフェイスを介してファイルを生成しようとすると、次のエラーが発生します。
Sorry, but I can't write the `wp-config.php' file.
このコマンドを使用してグループを変更してみました。/src/www/htdocs/wordpress
chown -R root:root /srv/www/htdocs/wordpress
しかし、うまくいきません。いくつかの調査の後、多くの人がグループを次のように変更するように言っているのを見ましたが、このコマンドが使用されているのを見ませwww-data
んでした。www-data
cut -d: -f1 /etc/group
私が間違っていることを知っている人はいますか?
答え1
フォルダの所有者をルートから現在のユーザーに変更するだけです。
sudo chown -R yourcurrentuser:currentgroup /srv/www/htdocs/wordpress
答え2
wp-config.php
まだ存在しない場合は、以下を使用してください。
cp wp-config-sample.php wp-config.php
Apacheで使用されるグループはApache設定ファイルにあります。 OS Xで見つける方法は次のとおりです。私にとって、グループは次のとおりです_www
。
grep ^Group /etc/apache2/httpd.conf
Unix / Linuxは3つの権限グループ(user
、、、group
)を使用しますothers
。私はあなたがuser
ファイルの所有者を維持したいと仮定します。最も簡単な方法は権限を与えてgroup
書くことですothers
。これを行うには、次を使用します。
chmod go+w wp-config.php
答え3
まず、Apacheデーモンが現在どのグループを使用しているかを確認してください。
$ cat /etc/apache2/apache2.conf | grep ^Group -B 2
# These need to be set in /etc/apache2/envvars
User ${APACHE_RUN_USER}
Group ${APACHE_RUN_GROUP}
[OK] これは、グループがAPACHE_RUN_GROUP
変数に保存されることを意味します。
$ echo ${APACHE_RUN_GROUP}
この変数は現在環境に設定されていません。なぜ?私は本当に知らない。ただし、Apache設定ファイルのコメントは、これらの変数が定義されたファイルを指しているため重要ではありません。
$ cat /etc/apache2/envvars | grep GROUP
export APACHE_RUN_GROUP=www-data
だから私の場合、Apacheが実行されるグループはwww-data
。これで、この情報を使用してWordPressディレクトリグループを変更できます。あなたの場合:
sudo chgrp -R www-data /src/www/htdocs
この-R
フラグは再帰的に作成されます。望むより!
答え4
nginxユーザーの場合、デフォルトユーザーはそのため、このユーザーに書き込み権限を付与する必要がwww-data
あります。www-data
chown -R www-data wordpress