我已经尝试阅读有关如何正确配置nginx以为rails 3.2提供静态资产的许多其他问题,但无论我尝试浏览器加载的资产路径与manifest.yml中指定的资产版本不匹配在预编译之后,因此找不到我的所有资产。
我的nginx配置如下:
location ~ ^/assets/ {
# Per RFC2616 - 1 year maximum expiry
# http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html
expires 1y;
add_header Cache-Control public;
gzip_static on;
# Some browsers still send conditional-GET requests if there's a
# Last-Modified header or an ETag header even if they haven't
# reached the expiry date sent in the Expires header.
add_header Last-Modified "";
add_header ETag "";
break;
}
我还检查了nginx中的根路径是否正确。我通过Unix Domain Socket使用nginx和unicorn。
我第一次设置好这一切都很好。然后我修改了一个资产并重新部署。那资产随后被打破了。然后我碰到了资产版本,现在所有资产都被打破了。我已经尝试清除我的本地缓存,以防引起问题,但没有帮助。
我现在开始撕掉我的头发,任何帮助都会非常感激。
答案 0 :(得分:0)
经过更多调查后,我发现更新时unicorn进程没有正确重启。