2

Mac Os X に Symfony をインストールして、次のことを行います。

chmod -R 777 app/cache app/log

これを試してください:

php app/console cache:clear

そしてエラーを返します:

[RuntimeException]                                                                        
Unable to write in the "/Users/anton/Sites/local/Symfony/app/cache/dev" directory 

それを修正してみてください!ありがとう!

4

2 に答える 2

8

Macを使用している場合は、ここで説明されているようにACLを使用できます。プロジェクトディレクトリから:

sudo chmod +a "_www allow delete,write,append,file_inherit,directory_inherit" app/cache app/logs
sudo chmod +a "whoami allow delete,write,append,file_inherit,directory_inherit" app/cache app/logs

_www最初の行は、Webサーバーを実行している名前です。

whoamiを入力するときは、2行目で変更する必要がありますphp app/console cache:clear。(通常はホームフォルダの名前)

于 2012-07-28T20:48:25.597 に答える
0

どうやらあなたのWebサーバー(apache?)はすでにキャッシュフォルダーにいくつかのファイルまたはディレクトリを作成しています(したがって、それらはWebサーバーユーザー、おそらくwww-dataが所有しています)。この場合、chmod では不十分です。chown -R anton app/cache app/log を実行する必要があります。

さまざまなキャッシュ ファイルのさまざまな所有者による一般的な問題を回避するには、コンソール ユーザーと、Web サーバーに対して php を実行するユーザーを同じにする必要があります。これを実現するにはさまざまな方法があります。あなたは出来る:

  1. Apache の構成を変更して、Apache が www-data ではなくユーザー (anton) で実行されるようにします。
  2. mod_php を削除し、代わりに php5-fpm を使用します (ユーザーを使用するように構成します)。
  3. fast_cgi を使用する
于 2012-07-28T17:14:01.873 に答える