Symfony 未送达资产档案

Symfony 未送达资产档案,symfony,nginx,assetic,Symfony,Nginx,Assetic,我正在使用symfony2.5.9、devenv和 assetic: use_controller: true 试图使用assetic作为我的资源 {% javascripts '@MeMyBundle/Resources/public/js/my-script.js' %} <script src="{{ asset_url }}"></script> {% endjavascripts %} 我不知道这是NginX问题还是SF问题 所以问题是:为什

我正在使用symfony2.5.9、devenv和

assetic:
    use_controller: true
试图使用assetic作为我的资源

{% javascripts '@MeMyBundle/Resources/public/js/my-script.js' %}
    <script src="{{ asset_url }}"></script>
{% endjavascripts %}
我不知道这是NginX问题还是SF问题


所以问题是:为什么NginX会给我发送404?

请尝试遵循中的规则。您正在生成的URL类似于SERVER_NAME/app_dev.php?REQUEST_URI,而不是SERVER_NAME/app_dev.php/REQUEST_URI,但您的上一条规则仅适用于app_dev.php或app_dev.php/提供的URL。

我遇到了同样的问题,放弃了,并执行了以下操作:

{% set serverName = app.request.server.get('SERVER_NAME') %}
{% set serverPort = app.request.server.get('SERVER_PORT') %}
{% set serverAddress = serverName ~ ':' ~ serverPort %}
<link href="http://{{ serverAddress }}/css/app.css" rel="stylesheet">
库普尔德可能把协议也放进去了,我不需要

root  /data/www/symfony/web;

location / {
    try_files $uri @pass_to_symfony_dev;
}

location ~ /app_dev.php/ {
    try_files $uri @pass_to_symfony_dev;
}

location @pass_to_symfony {
    rewrite ^ /app.php?$request_uri last;
}

location @pass_to_symfony_dev {
    rewrite ^ /app_dev.php?$request_uri last;
}

location ~ ^/app(_dev)?\.php($|/) {
    include fastcgi_params;
}
{% set serverName = app.request.server.get('SERVER_NAME') %}
{% set serverPort = app.request.server.get('SERVER_PORT') %}
{% set serverAddress = serverName ~ ':' ~ serverPort %}
<link href="http://{{ serverAddress }}/css/app.css" rel="stylesheet">