Rumah > pembangunan bahagian belakang > masalah PHP > Bagaimana untuk menghalang format fail cache imej dalam php

Bagaimana untuk menghalang format fail cache imej dalam php

PHPz
Lepaskan: 2023-04-12 15:09:01
asal
739 orang telah melayarinya

PHP ialah bahasa skrip bahagian pelayan yang digunakan secara meluas yang membolehkan anda menulis kod PHP untuk aplikasi web dan menjalankannya pada pelayan. Dalam PHP, anda kadangkala menghadapi beberapa masalah yang berkaitan dengan caching imej Contohnya, apabila anda membuka tapak web dalam penyemak imbas, imejnya tidak boleh dikemas kini atau berubah dengan sangat perlahan. Ini biasanya disebabkan oleh pelayar atau pelayan menyimpan imej. Oleh itu, artikel ini akan memperkenalkan anda kepada cara membuat imej format fail tanpa cache dalam PHP.

  1. Paksa penyemak imbas untuk tidak cache imej

Secara lalai, penyemak imbas akan cache imej yang dimuat turun, yang boleh mempercepatkan akses, tetapi ia juga membawa beberapa masalah . Dalam PHP, anda boleh menggunakan fungsi header() untuk mengawal masa cache pelayar dengan menetapkan Cache-Control. Contohnya:

<?php
header("Cache-Control: no-cache, no-store, must-revalidate"); //强制浏览器不缓存
header("Expires: 0"); //指定过期时间为0
?>
Salin selepas log masuk

Dengan cara ini, apabila pelayan mengembalikan imej, ia akan menetapkan pengepala respons HTTP untuk memberitahu penyemak imbas supaya tidak cache imej ini dan memuat turun imej terkini daripada pelayan setiap kali.

  1. Tambah rentetan rawak pada URL imej

Kaedah ini adalah untuk membuat penyemak imbas berfikir bahawa ia adalah imej dengan menambahkan rentetan rawak pada URL gambar baru untuk memuat turun gambar terkini. Rentetan rawak boleh menjadi cap masa, UUID atau nombor rawak. Contohnya:

<?php
$img_url = &#39;http://example.com/images/logo.png?rand=&#39; . uniqid(); //在图片URL中添加一个唯一标识符
echo &#39;<img src="&#39; . $img_url . &#39;">';
?>
Salin selepas log masuk

Dalam contoh ini, dengan menambah nombor rawak selepas URL, imej baharu akan dimuat turun setiap kali imej dimuatkan.

  1. Tetapkan imej supaya tidak boleh cache pada pelayan

Kaedah terakhir ialah untuk menetapkan imej supaya tidak boleh cache pada pelayan. Dalam pelayan Apache, anda boleh membatalkan cache imej dengan menambahkan kod berikut pada fail .htaccess:

<FilesMatch "\.(jpg|png|gif)$">
  Header set Cache-Control "max-age=0, no-store"
</FilesMatch>
Salin selepas log masuk

Kod ini bermakna ia hanya berkuat kuasa untuk fail .jpg, .png dan .gif . Tetapan Pengepala respons Cache-Control ialah "umur maks=0, tiada kedai". Ini akan memaksa penyemak imbas untuk memuat turun imej terkini dari pelayan setiap kali.

Ringkasan

Dengan mengubah suai pengepala respons HTTP, menambahkan parameter rawak pada URL atau menetapkan pengepala respons pada pelayan, anda boleh membuat imej dalam format fail tanpa cache PHP. Dengan cara ini, gambar terbaharu boleh dipaparkan tidak kira pelayar mana yang digunakan, membawa pengalaman yang lebih baik kepada pengguna.

Atas ialah kandungan terperinci Bagaimana untuk menghalang format fail cache imej dalam php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan