なぜ私の開発フロントコントローラーがアセチックURLに含まれているのですか?

StackOverflow https://stackoverflow.com/questions/7351739

  •  28-10-2019
  •  | 
  •  

質問

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.

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top