なぜ私の開発フロントコントローラーがアセチックURLに含まれているのですか?
質問
JavaScriptファイルを含めるためにAsseticを使用していますが、開発環境で使用する場合は、 /app_dev.php
URLの先頭に追加されるため、最終的なURLは次のようになります /app_dev.php/js/something.js
. 。これにより、JSをロードしようとすると404になります。生産環境からサイトにアクセスすると、URLS しないでください 含む /app_dev.php
そして、すべてが正常に機能します。
開発環境であるかどうかをチェックする条件付きを追加して電話をかけることができます str_replace
URLでは、可能であれば、この問題のルートを解決したいと思います。
編集
@gilden、私はdevで彼らが毎回処理されることを理解するでしょうが、URLは単に404Sをもたらすだけです。
これが私のアセック構成です:
assetic:
debug: %kernel.debug%
use_controller: false
filters:
cssrewrite: ~
# closure:
# jar: %kernel.root_dir%/java/compiler.jar
# yui_css:
# jar: %kernel.root_dir%/java/yuicompressor-2.4.2.jar
そして、これが私のテンプレートでそれを使用している方法です(app/resources/views/base.html.php)
foreach ($view['assetic']->javascripts(
array('@AssetsBundle/Resources/public/js/*'), array(), array('output' => 'js/combined.js')) as $url) {
echo 'url: ' . $url . '<br />';
}
次に、書いたカスタムヘルパーを使用して$ URLを含めますが、その時点で既にapp_dev.phpが含まれています。
解決
SymfonyでPHPテンプレートを使用していないので、最良の答えがないのではないかと心配しています。いくつかのカスタムコードを使用することで、おそらくコントローラーにリクエストを処理する内部ロジックを回避します。
回避策として、削除してみてください assetic: use_controller: true
から /app/config_dev.yml
.
所属していません StackOverflow