assetic:转储和错误404找不到JS文件

时间:2015-10-15 14:28:52

标签: javascript symfony assetic uglifyjs

我一直在使用资产:转储一段时间。但是,由于我们更改了应用程序的服务器,因此我们遇到了奇怪的错误。实际上,找不到assetic:dump生成的JS文件(404)。奇怪的是,这个bug取决于我正在使用的服务器。在生产服务器上,JS可以在app.php上找到,但不能在app_dev.php上找到。在测试服务器上,可以在app.php和app_dev.php上使用JS。在开发服务器上,JS既不在app.php上也不在app_dev.php上。这是一个环境问题。但是,我找不到问题所在。

我的配置:

assetic:
    debug:          "%kernel.debug%"
    use_controller: false
    bundles:
        - MyBundle 
    ruby: %path_ruby%
    node: %path_node%
    filters:
        cssrewrite: ~
        sass:
            bin: %path_sass%
            apply_to: "\.scss$"
        lessphp:
            file: "%kernel.root_dir%/../vendor/oyejorge/less.php/lessc.inc.php"
            apply_to: "\.less$"
        uglifyjs2:
            bin: %path_uglifyjs2%
        assets:
            back_js:
            inputs:
            - "%kernel.root_dir%/../vendor/jquery/jquery/jquery-1.11.0.js"
            - "%kernel.root_dir%/../vendor/twbs/bootstrap/js/transition.js"
            - "%kernel.root_dir%/../vendor/twbs/bootstrap/js/alert.js"
            - "%kernel.root_dir%/../vendor/twbs/bootstrap/js/button.js"
            - "%kernel.root_dir%/../vendor/twbs/bootstrap/js/carousel.js"
            - "%kernel.root_dir%/../vendor/twbs/bootstrap/js/collapse.js"
            - "%kernel.root_dir%/../vendor/twbs/bootstrap/js/dropdown.js"
            - "%kernel.root_dir%/../vendor/twbs/bootstrap/js/modal.js"
            - "%kernel.root_dir%/../vendor/twbs/bootstrap/js/tooltip.js"
            - "%kernel.root_dir%/../vendor/twbs/bootstrap/js/popover.js"
            - "%kernel.root_dir%/../vendor/twbs/bootstrap/js/scrollspy.js"
            - "%kernel.root_dir%/../vendor/twbs/bootstrap/js/tab.js"
            - "%kernel.root_dir%/../vendor/twbs/bootstrap/js/affix.js"
            - "%kernel.root_dir%/../vendor/braincrafted/bootstrap-bundle/Braincrafted/Bundle/BootstrapBundle/Resources/js/bc-bootstrap-collection.js"
            - "%kernel.root_dir%/Resources/js/plugins.js"
            - "%kernel.root_dir%/Resources/js/modernizr-2.6.2-respond-1.1.0.min.js"
            - "%kernel.root_dir%/Resources/js/jquery.mousewheel-3.0.6.pack.js"
            - "%kernel.root_dir%/Resources/js/jquery.minicolors.js"
            - "%kernel.root_dir%/Resources/js/jquery.minicolors.min.js"
            - "@MyBundle/Resources/public/js/jquery.countTo.js"
            - "@MyBundle/Resources/public/js/backend.js"
        output: js/headooback.js

app / console assetic:dump和app / console assetic:dump --env = prod,我有:

在html / app_dev.php上有这样的链接

<script src="http://bugs.com/js/505da13_back_1.js?2"></script>

在html / app_dev.php上有这样的链接

<script src="http://bugs.com/js/505da13_1.js?2"></script>

在我的网络文件夹

js/back.js

我已经尝试卸载nodejs和uglifyjs,然后重新安装它们。我确信他们的垃圾箱的路径是正确的。我也禁用了Apache的javascript-common.conf,以防它在错误的文件夹中搜索js。我还能检查什么?或者还有什么可以影响js的产生?我没有错。

谢谢。

2 个答案:

答案 0 :(得分:0)

你做了一个&#34; app / console:in&#34; (assetic:安装)?

答案 1 :(得分:-1)

如果您在更改设置后没有清除缓存,则通常会出现这种情况。尝试执行此操作:rm -r app/cache/*然后再次运行转储。这也可以解释服务器之间的差异。