2

Laravel のファイル キャッシング システムを (少なくとも一時的に) 使用して、データベースから主に静的な多数の小さいオブジェクトをキャッシュしています。ただし、artisan を使用していくつかの関数 (キャッシュから追加/呼び出しを行う) を実行してから Web ページを読み込もうとすると、キャッシュにアクセスしようとしたときにアクセス許可エラーが発生します。逆の場合も同じエラーが発生します (Web ページを表示してから artisan を実行します)。

これは、artisan コマンドを実行するとキャッシュが私が所有するのに対し、Web ページを実行すると apache が所有するためです。

私は2つの解決策を考えました。1 つ目は、すべての artisan 呼び出しの開始時と終了時にすべてのキャッシュを削除することです (理想的ではありません。パフォーマンスの向上のほとんどが失われます)。または、すべての職人のコマンドを apache ユーザーとして実行します (便利ではなく、おそらく不可能です)。

Laravelのファイルキャッシングのパーミッションを自動的に変更する方法はありますか? または、apache ユーザーを使用するように職人のキャッシュを設定しますか?

4

2 に答える 2

1

最もエレガントなソリューションではありませんが、職人のコマンドからキャッシュを削除するだけで済みました。これらはバックグラウンド タスクであり、フロント エンドと同じ高速化を必要としませんでした。

于 2014-03-12T17:57:58.657 に答える
0

chmodストレージ フォルダを 0777 に移動できます。これは、コマンド ラインを使用して実行できます。

$ chmod --help

于 2013-06-14T03:22:27.823 に答える