Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Povlačenje slika iz keša browsera, kako podesiti server?

[es] :: PHP :: PHP za početnike :: Povlačenje slika iz keša browsera, kako podesiti server?

[ Pregleda: 2047 | Odgovora: 2 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

pisac

Član broj: 13046
Poruke: 4578



+3341 Profil

icon Povlačenje slika iz keša browsera, kako podesiti server?30.03.2016. u 22:34 - pre 98 meseci
Kako ubediti browser da sliku povlači iz keša (ako je ima)?

Napravio sam prostu php skriptu koja šalje sliku iz baze.
Ništa posebno, poziva se sa pic.php?id=..., suština je u:
Code:

        header('Content-Type: image/jpeg');
        echo $data['pic'];

Ova slika se prikazuje u naslovu svake strane na sajtu.

Međutim, koliko vidim, svaki put kada prelazim na novu stranu ova slika se učitava ponovo sa servera.
Ima li caka da ubedim browser da 1) sačuva sliku u kešu, 2) proveri prvo svoj keš?
 
Odgovor na temu

plus_minus

Član broj: 289459
Poruke: 2242
*.dynamic.isp.telekom.rs.

Sajt: https://hardcoder.xyz


+2247 Profil

icon Re: Povlačenje slika iz keša browsera, kako podesiti server?31.03.2016. u 00:59 - pre 98 meseci
Uz pomoć .htaccess fajla ... ?

Code:

<IfModule mod_headers.c>
Header unset ETag
FileETag None

<filesMatch "\.(gif|GIF|jpg|JPG|jpeg|JPEG|png|PNG|swf|ico|cur)$">
ExpiresDefault A3600
Header append Cache-Control "public"
</filesMatch>

</IfModule>


# ExpiresDefault A3600 === 3600 sekundi === 1 sat

Dakle, ako hoćeš duže od jednog sata, izračunaš 60 * 60 * 24 * 7 (604800 sekundi ili nedelju dana) i promeniš ExpiresDefault u A604800

A ako nećeš preko .htaccess-a, onda bi ovo trebalo da radi..

Code (php):


$thatMuch = (60 * 60 * 24);
$cacheTime = (time() + $thatMuch);

header_remove('X-Powered-By');
header_remove('ETag');
header('Pragma: public');
header('Cache-Control: maxage='.$thatMuch);
header('Expires: ' . gmdate('D, d M Y H:i:s', $cacheTime) . ' GMT');
header('Image-Content-Origin: pisac');
header('Content-Type: image/jpeg');

 


$thatMuch - isto se računa kao i za .htaccess.

header('Image-Content-Origin: pisac'); - ovo možeš da makneš, zajebancija. (a i ne moraš)

Na tebi je sada da nađeš štos kako da pre nego što pošalješ headere, promeniš $thatMuch u 0..
Bilo bi sasvim dovoljno.

[Ovu poruku je menjao plus_minus dana 31.03.2016. u 02:12 GMT+1]
about:networking
 
Odgovor na temu

Aleksandar Đokić

Član broj: 13478
Poruke: 4793
*.dynamic.sbb.rs.



+638 Profil

icon Re: Povlačenje slika iz keša browsera, kako podesiti server?31.03.2016. u 16:29 - pre 98 meseci
To se obicno podesava i u konfiguraciji samog web servera, pa i ako ti ne stavis svakako se hederi dodaju.
 
Odgovor na temu

[es] :: PHP :: PHP za početnike :: Povlačenje slika iz keša browsera, kako podesiti server?

[ Pregleda: 2047 | Odgovora: 2 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.