【发布时间】:2017-10-12 02:02:06
【问题描述】:
我是 symfony 3 的新手,我正在尝试开发一个 web 应用程序。为了合并我的 css 和 js 文件,我已经安装了资产包,我正在开发模式下使用它,它工作正常,我没有任何问题。
然后当我尝试在生产模式下测试我的 web 应用程序时,css 和 js 不完整,网站无法正常工作。
我已经尝试了这两个命令,但没有任何改变:
php bin/console assetic:dump -env=prodphp bin/console cache:clear --no-warmup -e prod
使生产工作的唯一方法是在 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 文件的过程相同。
【问题讨论】:
-
你忘记了 - 在 "env" 之前:
php bin/console assetic:dump --env=prod并且当你通过composer install -o进行作曲家安装时,你必须优化符号链接 -
你能解释一下我和作曲家有什么关系吗?只有这个命令,还是我以后安装东西时必须使用它?
-
您是否也尝试安装您的资产?
php bin/console assets:install --env=prod;另外,请向我们展示您的app/config/config.yml -
好的,我现在没有运行
php bin/console assets:install --env=prod它工作正常,感谢@tchap -
很高兴它有帮助!我在答案中发表了评论,因此如果以后有人偶然发现此问题,您可以接受。