Cara Mengatasi Masalah “Internal Server Error”

Waktu Baca : 2 menit

Pagi-pagi sewaktu buka web Anda, tiba-tiba Anda mendapatkan pesan seperti di bawah ini :

Internal Server Error

The server encountered an internal error or misconfiguration and was unable to complete your request.

Please contact the server administrator, webmaster@******.com and inform them of the time the error occurred, and anything you might have done that may have caused the error.

More information about this error may be available in the server error log.

Additionally, a 500 Internal Server Error error was encountered while trying to use an ErrorDocument to handle the request.

Apaan ini yah ?

Jangan panik. Masalah seperti ini memang terkadang terjadi. Mari kita cari tahu apa sebenarnya yang terjadi.

Ada 5 macam kesalahan yang biasa muncul :

1. Error 400 : Error ini disebabkan karena kesalahan syntax

2. Error 401 : Error ini disebabkan karena file yang Anda request memerlukan authentication

3. Error 403 : Error ini disebabkan karena permission file /chmod yang Anda buka tidak bisa dibaca

4. Error 404 : Error ini disebabkan karena file / halaman web yang Anda buka tidak ditemukan

5. Error 500 : Error ini mengindikasikan bahwa terjadi masalah pada server. Sebagian besar disebabkan karena kesalahan penulisan pada .htaccess ataupun konfigurasi PHP (versi php dan ekstensionnya) yang tidak cocok dengan scriptnya.

 

Jika Error 500 terjadi pada web Anda, maka lakukan langkah-langkah berikut ini untuk menganalisa dan memperbaikinya :

1. Refresh website Anda

Cobalah tekan tombol F5 beberapa kali. Jika kadang tidak error, kemungkinan besar itu karena website Anda menggunakan resource CPU atau RAM melebihi limit yang ditentukan oleh hoster Anda, sehingga server akan memproteksi resource agar tidak mengganggu pelanggan lain. Hal ini biasa terjadi pada hosting dengan CloudLinux.

 

2. Cek permission file

Pastikan permission untuk file adalah maksimal adalah 644 dan untuk direktori/folder adalah 755. Anda tidak perlu melakukan CHMOD ke 777 agar suatu direktori atau file bisa dimanipulasi (diisi file, edit, upload dll) karena jika hosting Anda menggunakan suExec, maka Anda bisa melakukan operasi file tersebut tanpa harus merubah permission ke 777 yang bisa mengurangi tingkat keamanan website.

 

3. Cek File .htaccess

Kesalahan pada konfigurasi .htaccess juga bisa menyebabkan internal server error. Cara mengeceknya adalah dengan mengubah nama file .htaccess yang ada di directory public_html menjadi, misalnya : htaccess.txt, lau coba buka kembali website Anda. Jika sudah normal, berarti konfigurasi .htaccessnya bermasalah. Tetapi jika tetap error, berarti bukan karena file .htaccess tersebut.

 

4. Cek file error_log

Jika ketiga hal di atas ternyata tidak menyelesaikan masalah, coba buka file error_log yang ada di folder public_html. Jika misalnya muncul error seperti di bawah ini :

[06-Mar-2013 18:00:27 UTC] PHP Fatal error:  Out of memory (allocated 262144) (tried to allocate 261900 bytes) in Unknown on line 0
[06-Mar-2013 18:01:57 UTC] PHP Fatal error:  Out of memory (allocated 262144) (tried to allocate 261900 bytes) in Unknown on line 0

Itu artinya adalah script php Anda membutuhkan resources RAM melebihi batas limit yang ditentukan oleh provider hosting Anda, sehingga muncul pesan error 500. Hal ini biasa terjadi pada hosting dengan OS CloudLinux.

 

5. Jika langkah 1-4 tidak mengatasi, maka kemungkinan besar karena konfigurasi PHP pada servernya

Hal ini sering terjadi jika Anda pindah dari shared hosting ke VPS yang menggunakan cPanel… Anda harus lakukan tweaking cPanel dan konfigurasi ulang apachenya dengan menggunakan easyapache. Sesuaikan versi php dan ekstensi phpnya seperti pada hosting sebelumnya.

Jika Anda masih tetap tidak bisa menyelesaikan masalah ini, segera hubungi support hosting Anda.

Pilih Centos 32 bit atau 64 bit ? Baca ini dulu!

Waktu Baca : < 1 menit

Bagi Anda yang menggunakan VPS, pasti akan dihadapkan dengan pilihan apakah menggunakan OS Linux 32 bit atau 64 bit. Nah berikut ini pedoman Anda untuk memutuskannya.

32 bit hanya mampu menghandel memori RAM maksimal 4 Giga. Jadi jika RAM VPS Anda di atas 4 Giga, maka tidak ada cara lain Anda harus menggunakan 64 bit. Misalnya RAM Anda 6 Giga, jika menggunakan 32 bit, maka akan terbacanya tetap maksimal 4 Giga. Tapi sebenarnya linux 32 bit pun bisa menghandel RAM lebih dari 4 Giga dengan menggunakan kernel PAE (Recompile) yang mampu membaca dan menggunakan memori hingga 64 Giga.

Selain itu, limitasi size file juga berbeda. Hal ini akan berpengaruh jika Anda menggunakan VPS/dedicated sebagai penyimpanan file ukuran besar. 32 bit hanya mampu menghandel file dengan ukuran sampai 2 GB saja. Sedangkan 64 bit mampu lebih dari itu. Jadi kalau Anda menggunakan server tersebut untuk leecher dlsb, maka tentu 64 bit pilihannya.

Untuk mysql, jauh lebih optimal pemakaian RAMnya pada 64 bit dibanding 32 bit. Jadi kalau tujuan server Anda untuk webhosting, 64 bit lah pilihannya.

Ada juga yang menyarankan bahwa RAM 512 – 768 Mega lebih baik menggunakan 32 bit. Sedang di atas 768 Mega lebih baik menggunakan 64 bit.

Masalah yang sering dihadapi oleh 32 bit pada RAM di atas 768 mega adalah adanya highmem : RAM akan dengan cepat mudah penuh. Jadi paragraf sebelumnya mendukung pernyataan ini. Silahkan baca detail mengenai highmem di http://www.linux-mips.org/wiki/Highmem

Jadi kesimpulannya : 64 bit sangat dianjurkan jika RAM di atas 768 Mega, apapun tujuan penggunaan servernya.