Sumber Informasi

Menyediakan berbagai informasi yang menarik dan bermanfaat serta belajar bersama secara online

Translate This Page UK flag | Mobile Version

Mengatasi File error_log Membengkak

Mengatasi File error_log Membengkak
Mengatasi File error_log Membengkak
1<?php?>

Seberapa pentingkah file error_log, atau tidak penting sama sekali?
Menurut Sumber Informasi, file error_log itu bisa dibilang penting bisa juga tidak, tapi tidak untuk "tidak penting sama sekali".
File error_log berfungsi untuk merekam pemberitahuan jika ada error, fatal error, ataupun peringatan pada skrip PHP yang dijalankan. Kebanyakan yang dikeluhkan adalah setelah menggunakan bahasa pemrograman PHP versi 5 ke atas yang sebelumnya menggunakan versi 5 kebawah, sialnya lagi script cms yang dipakai terdapat banyak peringatan sehingga menciptakan sebuah file error_log yang berukuran sangat besar.

Solusi masalah di atas biasanya pemilik website akan menghapus file error_log secara otomatis melalui cron job, menambahkan perintah ke dalam file .htaccess supaya sistem tidak merekam pesan [Error, Fatal Error, Warning, ataupun Notice], mengubah CHMOD pada file error_log menjadi 444 atau 000, dan lain sebagainya.

Solusi terbaik dalam menangani masalah file error_log membengkak adalah memahami pesan yang direkam kemudian memperbaiki kode-kode script kita.

Dalam kasus ini, isi file error_log yang sering ditemukan adalah berupa "Notice: ....undefined variable...... Dan ...Notice: .....undefined index....".
Perhatikan kode berikut:
[code] $string='Sumber-Informasi.com adalah blog sumber informasi yang menarik dan bermanfaat';
$cari=htmlspecialchars($_GET['cari']);
if(!empty($cari)){
if(strpos($string,$cari) !==false){
$hasil='Kata "'.$cari.'" ditemukan';
}else{
echo 'Maaf, kata "'.$cari.'" tidak ada';}}
echo $hasil;
echo '

Cari kata

';
?>[/code]
Misalnya script di atas diberi nama cari.php, kemudian dijalankan dengan url _http://domain.anu/cari.php?cari=hohoho, maka server akan menuliskan ke file error_log seperti ini "PHP Notice:
Undefined variable: hasil in /home/user/www/cari.php on line 10"
.

Misalnya lagi script di atas dijalankan dengan url _http://domain.anu/cari.php tanpa ?cari=, maka server akan menuliskan 2 Notice ke dalam file error_log, notice 1 sama dengan yang tadi dan notice 2 seperti ini "PHP Notice: Undefined index: cari in /home/user/www/cari.php on line 3".

Seperti contoh di atas, itulah yang membuat file error_log membengkak. Kita bisa saja menghapusnya, mengubah CHMOD, atau melarang sistem menulis ke file error_log, tapi alangkah baiknya jika script kita di perbaiki. Kode skrip yang baik akan membuat website kita mudah diakses, karena dengan banyaknya kode yang kurang baik akan membuat server terbebani.

Nah, untuk memperbaiki script di atas perhatikan script berikut:
[code] $string='Sumber-Informasi.com adalah blog sumber informasi yang menarik dan bermanfaat';
$cari=isset($_GET['cari']) ? htmlspecialchars($_GET['cari']) : null;
echo !empty($cari) ? (strpos($string,$cari) !==false ? 'Kata "'.$cari.'" ditemukan' : 'Maaf, kata "'.$cari.'" tidak ada') : null;
echo '

Cari kata

';
?>[/code]
Kalau diperhatikan, script yang sudah diperbaiki tidak lagi menggunakan if else karena sudah digantikan dengan Ternary Operator ( ? : ).
Variable $cari juga sudah ditambah isset(), sehingg bila script dijalankan dengan url seperti tadi server tidak akan merekam apapun karena script sudah lumayan mantap nyengir.

Apabila masalah file error_log membengkak sulit ditangani dengan cara memperbaiki kode, maka terpaksa gunakan cara lain.

Berikut ini beberapa cara mengatasi file error_log membangkak khusus shared hosting.
1. Menghapus file error_log otomatis melalui Cron Job
Masuk ke cPanel lalu pilih menu Cron Job, kemudian buat perintah:
rm -rf /home/username/public_html/error_log
NOTE: username dan public_html sesuaikan dengan hosting Anda.

2. Mengatasi file error_log membengkak dengan .htaccess
Masukan kode berikut:
php_value error_reporting Off
php_flag display_errors Off
php_flag log_errors Off
php_flag ignore_repeated_errors Off
php_flag ignore_repeated_source Off

NOTE: beberapa hosting tidak support php_flag.

3. Mengatasi file error_log membengkak dengan perintah sederhana
Salin script berikut dan simpan ke file index.php pada directory utama.
Spoiler for script sederhana mengatasai error_log membengkak:

[code] $root=$_SERVER['DOCUMENT_ROOT'];
$file='error_log';
$cek=file_exists($root.'/'.$file) ? true : false;
if($cek){
$reset=fopen("$root/$file", "w");
fwrite($reset, '');
fclose($reset);}?>[/code]
Copy:

Selain ditaruh langsung ke file index.php, script tersebut bisa juga dibuatkan terlebih dahulu sebuah file khusus kemudian gunakan fungsi include().

Contoh: misalnya script diberi nama reset.php.
Buka dan edit file index.php, lalu tambahkan kode include('reset.php');.
Dengan begitu, isi file error_log akan dihapus atau direset ke 0 ketika pengunjung mengakses halaman utama website kita, dan masalah error_log membengkak tidak ada lagi.


Demikian post kali ini tentang Mengatasi File error_log Membengkak.
Jika ada yang ingin ditanyakan atau ditambahkan silakan berkomentar.
Semoga bermanfaat smile.

Artikel Terkait

Tulis Komentar



Untuk mendapatkan artikel terbaru segera Daftarkan Email Anda.

Budi's avatar

Budi

Makasih infonya gan..
Membantu banget..


18 Aug 2014 - 12:33
180.254.20.246
Jawab

Comments

Tulis Komentar di artikel Mengatasi File error_log Membengkak
Nama :

Surel :

Situs url :

Komentar :

Kode : 3yl9c


Bbcode HIDUP | Smiley HIDUP
Pencarian

Blog Judul Komentar
 
Arsip
Statistik
Online : 6
Hits: 1143/5328968
Hosts: 195/1730739