GNU/Linux >> Belajar Linux >  >> Linux

Cara mengoptimalkan cache file statis Apache di Ubuntu 18.04

Panduan ini menunjukkan cara mengonfigurasi pengaturan kedaluwarsa header dengan Apache dengan benar, mengoptimalkan kinerja server web dalam menyajikan file statis, seperti file gambar, CSS, atau JavaScript.

Banyak bandwidth di server Anda akan disimpan, dengan menetapkan tanggal minimum untuk file caching. Akibatnya, dengan menggunakan cache browser klien, situs web yang dihosting akan dimuat lebih cepat.

Pertama, sambungkan ke server Anda melalui koneksi SSH. Jika Anda belum melakukannya, mengikuti panduan kami disarankan untuk terhubung secara aman dengan SSH. Untuk server lokal, lanjutkan ke langkah berikutnya dan buka terminal server Anda.

Mengaktifkan modul yang diperlukan

Untuk mengaktifkan pengiriman Header yang diperlukan, pertama-tama aktifkan modul Apache terkait:

$ sudo a2enmod expires

Dan kemudian restart layanan:

$ sudo service apache2 restart 

Konfigurasi modul

Konfigurasi modul dapat disisipkan sebagai berikut :

  • Dalam konfigurasi Apache:itu akan diwarisi oleh semua situs yang dikendalikan oleh Apache (host virtual dan non-virtual)

  • Dalam wadah host virtual

  • Dalam direktif atau file .htaccess

Dalam contoh berikut, ini dimasukkan dalam konfigurasi situs default:

$ sudo vim /etc/apache2/sites-available/000-default.conf

Kemudian tambahkan konfigurasi berikut:

<IfModule mod_expires.c>

          <FilesMatch "\.(jpe?g|png|gif|js|css)$">

                      ExpiresActive On

                      ExpiresDefault "access plus 1 week"

          </FilesMatch>

</IfModule>

Melalui arahan FilesMatch file mana yang harus disimpan oleh browser klien (dalam hal ini css, jpg, png, gif dan js) sedang ditentukan.hile, melalui ExpiresDefault, berapa lama mereka harus disimpan (dalam contoh ini, seminggu) untuk ditunjukkan.

Untuk menerapkan perubahan, mulai ulang Apache:

$ sudo service apache2 restart 

Selain metode FilesMatch dan ExpiresDefault, ExpiresByType dapat digunakan untuk mengatur Header Expires untuk setiap jenis file, misalnya:

<IfModule mod_expires.c>

 ExpiresActive on
 ExpiresByType image/jpg "access plus 60 days"
 ExpiresByType image/png "access plus 60 days"
 ExpiresByType image/gif "access plus 60 days"
 ExpiresByType image/jpeg "access plus 60 days"
 ExpiresByType text/css "access plus 1 days"
 ExpiresByType image/x-icon "access plus 1 month"
 ExpiresByType application/pdf "access plus 1 month"
 ExpiresByType text/javascript "access plus 1 week"

</IfModule>

Dengan menggunakan metode ini, kontrol yang lebih terperinci atas durasi cache dapat diperoleh dan caching data Ajax, dengan tidak memasukkan aplikasi tipe mime/javascript dapat diperoleh.

Untuk kedua direktif, sintaks untuk menunjukkan durasi cache adalah sama, yaitu:

“[base] plus [valore] [tipo] [valore] [tipo] [valore] [tipo] …”

Nilai dasarnya dapat berupa:

  • akses:tanggal permintaan klien

  • modifikasi:tanggal modifikasi file

Sementara jenisnya dapat memiliki nilai berikut:

  • tahun:tahun

  • bulan:bulan

  • minggu:minggu

  • hari:hari

  • jam:jam

  • menit:menit

  • detik:detik

Beberapa contoh konfigurasi adalah:

# One year cache expiry 
ExpiresByType image/jpeg "access plus 1 year"

#Furthermore, more than one unit of measurement in sequence can be added. For example:

# Set 1-month, 15- day and 2-hour expiry
ExpiresByType text/html "access plus 1 month 15 days 2 hours"

# Cache expiry from the file modification date more than 5 hours and 3 minutes 
ExpiresByType image/gif "modification plus 5 hours 3 minutes"

Harap diingat bahwa jika Anda harus mengubah konten file yang di-cache, yang terakhir tidak akan diunduh oleh klien sampai waktu cache berakhir. Hal ini dapat menyebabkan malfungsi pada situs web Anda.

Meskipun klien tidak dapat dipaksa untuk mengabaikan cache yang disimpan sebelumnya, beberapa teknik dapat digunakan untuk menghindari masalah ini.

Metode yang sering digunakan adalah mengganti nama file yang baru saja dimodifikasi (misalnya dari style.css menjadi style-v2.css) atau mengubah tautan dengan menambahkan nomor versi, misalnya dari:

<script src="https://www.domain.com/js/myScript1.js"></script>

ke yang berikut:

<script src="https://www.domain.com/js/myScript1.js?v=3.1"></script>

Linux
  1. Cara mengoptimalkan cache file statis Apache di Ubuntu 18.04

  2. Cara Mengaudit Akses File di Linux

  3. Cara menginstal g ++ di Ubuntu

  1. Ubuntu – Bagaimana Cara Mengatur Ip Statis Di Ubuntu?

  2. VIM:cara menuju ke baris yang tepat di Ubuntu

  3. Cara menginstal Apache Cassandra di Ubuntu 20.04

  1. Bagaimana cara menginstal Apache di Ubuntu?

  2. Filter dan optimalkan permintaan file statis dengan NGINX di Ubuntu 18.04

  3. Waktu akses file tidak diperbarui di ubuntu 12.04