我已经configurationNginx(在我的本地服务器上)添加Expires头像这样:
location ~* \.(ico|css|js|gif|jpe?g|png)$ { expires max; #auth_basic "Restricted, please login"; #auth_basic_user_file htpasswd.users; }
但是YSlow不停地说:
There is 1 static component without a far-future expiration date. * (no expires) http://atpc.dev/f/a/i/favicon.ico
难道我做错了什么?
经过多次testing,我注意到我的原始正则expression式自开始以来工作正常。 但是,.ico文件被错误地命名,所以浏览器没有find它。 这是YSlow警报的真正原因。 当然,没有find的文件不应该显示“远期过期date”警报,而是显示“未find内容”…
在YSlow中检查过期标题: 
可能工作在另一个位置。 尝试相同的configuration:
location = /f/a/i/favicon.ico { expires max; }
更改configuration后,重新加载nginx:
$ sudo nginx -t $ sudo nginx -s reload
问题在于,favicon.ico在您指定的条件下不匹配。 尝试添加这样的东西。
location /favicon.ico { expires max; }
有些客户在您的网站的根目录中寻找favicon。
location /favicon.ico { # if not found send 204 (content not found) try_files /f/a/i/favicon.ico =204; expires max; }