web-dev-qa-db-ja.com

ディレクトリを永続的に書き込み可能にする方法は?

開発にLAMPスタックを使用していますが、/ var/wwwを永続的に書き込み可能にすることに問題があります。私はこのコマンドを使用します:

Sudo chmod -R a+rwX /var/www

これは機能しますが、Webアプリを配置してブラウザからアクセスすると、「許可が拒否されました」というエラーが表示されます。その場合、コマンドを再度実行する必要があります。

コマンドを再実行せずに、ディレクトリを永続的に書き込み可能にするにはどうすればよいですか?

ありがとう!

24
potomato

数値の許可で問題を解決できます。

Sudo chmod 775 'your directory'

なぜ775だけが答えなのか知りたいなら

400 read by owner
040 read by group
004 read by anybody
200 write by owner
020 write by group
002 write by anybody
100 execute by owner
010 execute by group
001 execute by anybody

 400
+040
+004
+200
+020
+100
+010
+001
=775

誰でも書き込みを除くすべての許可を与えます。

34
Diprute

通常、使用したコマンドは許可を永続的に変更する必要があります。

Sudo chmod -R 775 /var/www/(基本的に同じです)を試してください。それでもうまくいかない場合は、Sudo chown <user>[:<group>] /var/www/を使用してディレクトリの所有者(および場合によってはグループ)を変更する必要があります。

また、「許可拒否エラー」は、データベースまたは他の場所へのアクセス権が不十分であることが原因と考えられる場合があります。

8
David

私は同じ問題を抱えていました

Sudo chmod 777 directory

それを解決しました。

これにより、ディレクトリは誰でも書き込み可能、​​読み取り可能、実行可能になります。したがって、どのユーザーまたはグループがそれを所有したか、またはLamppを使用したかは関係ありません。

ただし、コンピューターがパブリックアクセスの場合はお勧めできません。

8
M Cornel