主因就是 Safari POST header 有多加了 If-Modified-Since and If-None-Match.
但這 header 應該是給 GET 使用, 所以 Server 回 Precondiction Failed
結論就是改用 GET 去取得 server static file
原文
Compare that behavior with the POST request. According to RFC2616, 304 can be sent only in response to GET, not POST. Instead Apache looks at the incoming request with the If-None-Match and If-Modified-Since and thinks, "No, I don't have a reply that is modified since the date provided, and the only response(s) I do have would return the same Etag matching in the If-None-Match, so I must return 412." This is a difference between POST and GET, if it appears to be a duplicate response, POST will return 412 Precondition Failed, but GET with return 304 Not Modified. See section 14.26 in RFC2616.
留言列表