我已经尝试阅读许多其他关于如何正确配置 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 域套接字将 nginx 与 unicorn 一起使用。
我第一次设置这个,一切都很好。然后我修改了一个资产并重新部署。该资产随后被破坏。然后我撞了资产版本,现在所有资产都坏了。我已尝试清除本地缓存以防万一导致问题,但没有帮助。
我现在开始扯头发,任何帮助将不胜感激。