【发布时间】:2016-11-15 14:56:31
【问题描述】:
我对我生成的资产 URL 有疑问。
在视图上,这就是我所做的:
{% block stylesheets %}
{% stylesheets
'assets/vendor/bootstrap/dist/css/bootstrap.min.css'
'assets/vendor/font-awesome/css/font-awesome.min.css'
'assets/vendor/dist/css/*.css'
output = 'bundles/compiled/css/app.css' %}
<link rel="stylesheet" href="{{ asset_url }}" />
{% endstylesheets %}
{% endblock %}
{% javascripts
'assets/vendor/jquery/dist/jquery.min.js'
'assets/vendor/bootstrap/dist/js/bootstrap.min.js'
'assets/vendor/dist/js/wow.min.js'
'assets/vendor/dist/js/slider.js'
'assets/vendor/dist/js/jquery.fancybox.js'
'assets/vendor/dist/js/owl.carousel.min.js'
'assets/vendor/dist/js/main.js'
'assets/vendor/dist/js/modernizr-2.6.2.min.js'
output = 'bundles/compiled/js/app.js' %}
<script src="{{ asset_url }}"></script>
{% endjavascripts %}
在开发环境中,应用不会调用assetic:dump生成的这些输出链接,即:
bundles/compiled/css/app.css
和
bundles/compiled/js/app.js/
都在 /web 文件夹之后。
在 prod 中,我无法到达这些位置。我得到和 404 以http://link.com/bundles/compiled/css/app.css 为例。
那么,如何配置我的config.yml 以在prod 环境中到达该路径?
这就是我所拥有的:
assetic:
debug: '%kernel.debug%'
use_controller: '%kernel.debug%'
filters:
cssrewrite: ~
**编辑:**我发现了问题。我assetic的配置没问题,问题出在VirtualHosts文件(具体来说是modrewrite行),它只接受“.php”扩展文件和web/文件夹权限。
【问题讨论】:
-
您是否运行了命令
php app/console assets:install? -
@Veve 是的,在
assetic:dump之前。
标签: css symfony assets environment