Myślę, że rozwiązałem problem GoogleImageProxy.
To jest coś związanego z koncepcją CACHING. przypuśćmy, że niedawno wdrożyłeś kod php na serwerze, ale zapomniałeś załadować obrazy. raz przetestowałeś logikę poczty e-mail. Twój system wygenerował wiadomość e-mail w formacie HTML. Gdy ten e-mail dotrze do serwera Gmaila, GoogleImageProxy spróbuje pobrać i zapisać obrazy z Twojej witryny na swoim własnym serwerze proxy. podczas pobierania obrazów GoogleImageProxy znalazł około 404 statusów dla brakujących obrazów i 403 dla niektórych chronionych obrazów. GoogleImagesProxy przechował te stany na swoim własnym serwerze proxy.
Teraz, gdy próbowałeś otworzyć swój e-mail, zauważyłeś około 404 statusów na swoich obrazach. To jest coś zrozumiałego. Od razu zdałeś sobie sprawę, że zapomniałeś przesłać niektórych obrazów, więc przesłałeś je na swój serwer. a także ustaliłeś pewne uprawnienia do chronionych obrazów.
Wszystko gotowe. Teraz spróbuj ponownie uruchomić skrypt php-email. W rezultacie otrzymasz kolejną wiadomość e-mail w skrzynce odbiorczej Gmail lub Hotmail. naprawiłeś wszystkie problemy ze swoimi obrazami. Teraz obrazy muszą być wyświetlane w treści wiadomości e-mail. ale nadal nie możesz zobaczyć obrazów.
Ach, prawdopodobnie zapomniałeś wyczyścić pamięć podręczną przeglądarki. Wyczyść pamięć podręczną przeglądarki i ponownie załaduj stronę Gmail lub Hotmail. Ale wynik będzie nadal taki sam. Spróbuj zastosować dziesiątki poprawek / łatek i spróbuj tysiące razy uruchomić swój skrypt php-email. Ale wynik będzie nadal taki sam. Brak poprawy.
PRAWDZIWY PROBLEM
Co się do cholery dzieje? Pozwól, że ci to wyjaśnię. Przejdź do dziennika dostępu i spróbuj znaleźć żądania z GoogleImageProxy. Zdziwisz się, widząc, że będą tylko 2-3 żądania z GoogleImageProxy, w zależności od liczby różnych obrazów użytych w Twojej wiadomości e-mail. GoogleImageProxy nigdy nie próbowało pobierać obrazów Nawet po rozwiązaniu problemów z obrazami, przesyłając brakujące obrazy i ustawiając uprawnienia do obrazów chronionych. Czemu? Wyczyszczenie pamięci podręcznej przeglądarki nie ma żadnego wpływu. GoogleImageProxy nigdy nie pobierze nowych obrazów nawet dla nowszych wiadomości e-mail, ponieważ obrazy są teraz buforowane w GoogleImageProxy wraz z ich ostatnim kodem stanu i nie są przechowywane w pamięci podręcznej Twojej przeglądarki.
GoogleImageProxy wyznaczył własną datę ważności obrazów. Myślę, że miesiąc. więc teraz nowa kopia obrazów zostanie pobrana po upływie daty ważności. Mam na myśli po miesiącu. Nie możesz zmusić GoogleImageProxy do pobrania obrazów. Ale ważne jest, aby wyświetlać obrazy w wiadomości e-mail. Jakie może być rozwiązanie?
ROZWIĄZANIE
Oto jedyny sposób, aby zmusić GoogleImageProxy do pobrania obrazów
- Zmień nazwę swoich obrazów na inną z rozszerzeniami png, jpg lub gif.
- Nie używaj żadnego ciągu zapytania w adresie URL obrazu, takiego jak
?t=34343
- Twój obraz musi zawierać jako rozszerzenie png, jpg lub gif.
- adres URL obrazu musi być bezpośrednio odwzorowany na obraz.
- Jeśli potrzebujesz użyć adresu URL proxy dla chronionych obrazów, Twoja odpowiedź musi zawierać odpowiedni nagłówek, taki jak
Content-Type: image/jpeg
- Rozszerzenie pliku i nagłówek typu treści muszą być zgodne
- Kod statusu musi mieć wartość 200 zamiast 403, 500 itd
WAŻNA UWAGA
Spróbuj powtórzyć cały proces dla każdego uruchomienia skryptu php-email. ponieważ za każdym razem GoogleImageProxy będzie buforować twoje obrazy i będziesz musiał powtarzać ten sam proces dla każdej nowej próby.
Mam nadzieję, że rozwiąże to problem większości ludzi.