Tôi nghĩ rằng tôi đã tìm ra vấn đề GoogleImageProxy.
Đây là một cái gì đó liên quan đến khái niệm CACHING. giả sử, gần đây bạn đã triển khai mã php trên máy chủ của mình nhưng bạn quên tải lên hình ảnh. bạn đã thử nghiệm một lần với logic email của mình. hệ thống của bạn đã tạo một email HTML. Khi email này đến máy chủ gmail, GoogleImageProxy sẽ cố gắng tìm nạp và lưu trữ hình ảnh từ trang web của bạn vào máy chủ proxy của chính nó. trong khi tìm nạp hình ảnh, GoogleImageProxy đã tìm thấy một số trạng thái 404 đối với hình ảnh bị thiếu của bạn và 403 đối với một số hình ảnh được bảo vệ. GoogleImagesProxy đã lưu trữ các trạng thái này vào máy chủ proxy của chính nó.
Bây giờ cố gắng mở email của bạn, bạn nhận thấy một số trạng thái 404 chống lại hình ảnh của bạn. Đây là điều dễ hiểu. Bạn ngay lập tức nhận ra rằng bạn đã quên tải lên một số hình ảnh, vì vậy bạn đã tải chúng lên máy chủ của mình. và bạn cũng đã sửa một số quyền đối với hình ảnh được bảo vệ.
Bây giờ bạn đã hoàn thành tất cả. Bây giờ bạn thử chạy lại tập lệnh php-email của mình. Kết quả là bạn nhận được một email khác trong hộp thư đến Gmail hoặc Hotmail của mình. bạn đã khắc phục tất cả các vấn đề với hình ảnh của mình. Bây giờ hình ảnh phải được hiển thị trong nội dung email của bạn. nhưng bạn vẫn không thể nhìn thấy hình ảnh.
À, có thể bạn đã quên xóa bộ nhớ cache của trình duyệt. Xóa bộ nhớ cache của trình duyệt và tải lại trang gmail hoặc hotmail. Nhưng kết quả sẽ vẫn vậy. Cố gắng áp dụng hàng chục bản sửa lỗi / bản vá và cố gắng chạy tập lệnh php-email của bạn hàng nghìn lần. Nhưng kết quả sẽ vẫn vậy. Không có cải thiện.
VẤN ĐỀ THỰC TẾ
Cái quái gì đang diễn ra vậy? Hãy để tôi giải thích cho bạn. Truy cập nhật ký truy cập của bạn và cố gắng tìm các yêu cầu từ GoogleImageProxy. Bạn sẽ ngạc nhiên khi thấy rằng sẽ chỉ có 2 hoặc 3 yêu cầu từ GoogleImageProxy tùy thuộc vào số lượng hình ảnh khác nhau được sử dụng trong email của bạn. GoogleImageProxy không bao giờ cố gắng tìm nạp hình ảnh Ngay cả sau khi bạn đã khắc phục sự cố với hình ảnh của mình bằng cách tải lên hình ảnh bị thiếu và đặt quyền cho hình ảnh được bảo vệ. Tại sao? Xóa bộ nhớ cache của trình duyệt không có tác động. GoogleImageProxy sẽ không bao giờ tìm nạp hình ảnh mới ngay cả đối với email mới hơn của bạn vì hình ảnh hiện được lưu vào bộ nhớ cache của GoogleImageProxy cùng với mã trạng thái cuối cùng của chúng và không được lưu vào bộ nhớ cache trong trình duyệt của riêng bạn.
GoogleImageProxy đã đặt ngày hết hạn của riêng mình cho các hình ảnh. Tôi nghĩ một tháng. vì vậy bây giờ bản sao mới của hình ảnh sẽ được tìm nạp sau ngày hết hạn. Ý tôi là sau một tháng. Bạn không thể buộc GoogleImageProxy tìm nạp hình ảnh. Nhưng điều quan trọng là bạn phải hiển thị hình ảnh trong email của mình. Giải pháp có thể là gì?
GIẢI PHÁP
Sau đây là cách duy nhất để buộc GoogleImageProxy tìm nạp hình ảnh của bạn
- Đổi tên hình ảnh của bạn thành một cái gì đó khác chỉ với phần mở rộng png, jpg hoặc gif.
- Không sử dụng bất kỳ loại chuỗi truy vấn nào trong url hình ảnh của bạn như
?t=34343
- hình ảnh của bạn phải bao gồm png, jpg hoặc gif dưới dạng phần mở rộng.
- url hình ảnh của bạn phải được ánh xạ trực tiếp vào hình ảnh của bạn.
- Nếu bạn cần sử dụng một số url proxy cho hình ảnh được bảo vệ của mình thì phản hồi của bạn phải bao gồm tiêu đề thích hợp như
Content-Type: image/jpeg
- Phần mở rộng tệp và tiêu đề loại nội dung phải khớp
- Mã trạng thái phải là 200 thay vì 403, 500, v.v.
LƯU Ý QUAN TRỌNG
Cố gắng lặp lại toàn bộ quy trình cho mỗi lần chạy tập lệnh php-email. bởi vì mỗi lần GoogleImageProxy sẽ lưu vào bộ nhớ cache hình ảnh của bạn và bạn sẽ phải lặp lại quy trình tương tự cho mỗi lần thử mới.
Hy vọng rằng điều này sẽ khắc phục sự cố cho hầu hết mọi người.