web-dev-qa-db-ja.com

資産-ルート "_assetic_001d5b7_0"は存在しません

この質問は何度も聞かれたようですが、どの解決策も私にはうまくいきません。

私は自分の製品環境にいます、これが私がしたことです:

  • 何かをする前/後にキャッシュをクリアしました
  • config_devの_asseticのものをコメントアウトして、他の場所にないことを確認しようとしました(これは、prod envで問題になるはずではありません)
  • use_controllerをtrueとfalseの両方に設定します(明らかにtrueで機能しますが、コンパイルされたファイルは使用しません)

他に足りないものはありますか?ファイルはphp app/console assetic:dump --env=prod --no-debugから完全に正常に生成されています。ファイル名は、エラーのファイル名からルートのものを除いたものと一致します。

22
greg

私はちょうど1分前にこの問題を抱えていました。キャッシュのクリーンアップは私のために働いた:

app/console cache:clear --env=prod

お役に立てれば。

50
micha149

キャッシュのクリアまたはアセットのダンプが機能しない場合。ノイズブリードのコメントを試してください:

// app/config_dev.yml
assetic:
    use_controller: true
    bundles: ['FooBarBundle']
23

App /routing_dev.ymlからアセットルーティングを削除した可能性があります

_assetic:
    resource: .
    type:     assetic
14
user3013964

同じ問題に直面しましたが、理由は、テンプレートに「something.html.twig」ではなく「something.twig」という名前を付けたためです。

拡張子が.htmlのないテンプレートをスキャンしないのは有益なようです。

結果として-テンプレートは機能しますが、アセットはそこからアセットのダンプ/追加ルートを実行しません。 .htmlを追加すると、問題が解決します。

2
igritsay

Config.ymlをダム文字(改行、空白)で更新すると、そのエラーが削除されます。そうすることで、キャッシュを強制的に再生成するようです。 (Symfony 3.0.0)

1
Remy Mellet

@マーカスが言ったように、あなたが試した場合:

php bin/console cache:clear

役に立たなかった場合は、your_project_root/var/cacheフォルダーを手動でクリアしてください(すべてのフォルダーとファイルを削除してください)。 UNIX/Linuxシステムを使用していて、「ファイルの削除中にエラーが発生しました:アクセスが拒否されました」などのシステムメッセージが表示された場合は、最初にdirへのアクセスを変更する必要があります。たとえば、コンソールコマンドを使用できます。

Sudo chmod -R 0777 /your_site_directory/var/cache/

この後、キャッシュディレクトリをクリアできます。

0
Vaha

多分手遅れですが...私のために働いたもの:

php composer.phar install
php app/console cache:clear
php app/console cache:warmup
0
augustocosta

ここで提案されたすべての解決策を試した後、私にとっては、テンプレートの名前の問題でした。私は.twig だがしかし .html.twig拡張機能、それだけです。

0
gphilip

Twigテンプレートディレクトリを上書きしようとした後、Symfony 3.3でこの問題が発生しました。問題を修正する方法がわかりませんが、デフォルトのテンプレートディレクトリ設定に戻すと、今のところ問題は解決しました。

# config.yml
twig:
    paths: ["%kernel.project_dir%/templates"] # Remove this line to use default dir
0
Brooks