Symfony 3 - 资产转储适用于开发但不适用于生产

Symfony 3 - Assetic dump works on dev but doesn't work on prod

我是 symfony 3 的新手,我正在尝试开发一个网络应用程序。为了合并我的 css 和 js 文件,我安装了 assetic bundle 并在开发模式下使用它,它工作正常,我没有任何问题。

然后,当我尝试在生产模式下测试我的 Web 应用程序时,css 和 js 不完整,网站无法正常运行。

我试过这两个命令,但没有任何改变:

制作作品的唯一方法是在 app.php 文件上设置 $kernel = new AppKernel('prod', true);,但我认为这不是最佳解决方案。

有什么想法吗?

这是我在基本模板上的代码:

{% block stylesheets %}
        {% stylesheets
        'css/dist/bootstrap.css'
        'css/dist/bootstrap-grid.css'
        'css/dist/bootstrap-reboot.css'
        'css/dist/font-awesome.css'
        'css/dist/sidenav.css'
        'css/dist/head.css'
        'css/dist/main.css'
        filter='cssrewrite' output='css/compiled/app.css' %}
        <link rel="stylesheet" href="{{ asset_url }}">
        {% endstylesheets %}
    {% endblock %}

如您所见,我从 <root>/web/css/dist/* 获取 css 文件,然后转储到 <root>/web/css/compiled/app.css 文件是在转储时创建的,但并非所有 css 都存在.

js 文件的相同过程。

您也需要安装您的资源:

php bin/console assets:install --env=prod