Monday 22 January 2018

Internal Server Error

Happy New Year Everyone..haha

Rasanya belum terlambat nak ucap selamat tahun baru. Memang nak buat posting pasal New Year tapi tak sempat sebab kerja yang bertimbun. Tambahan pulak aku dipindahkan ke position baru. Sebelum meninggalkan position lama, kerja kena kasi siap boh.

Banyak kerja yang tak siap lagi. Yang paling besar data migration dari sistem baru nak up ke sistem yang lama dah up. Script aku dah buat separuh. Tengah buat testing script tu pakai dummy data. Dah dekat 2-3 minggu gak aku buat tak success lagi. Baru minggu lepas jumpa jalan. Kena pulak minggu ni website h**p***l s***y**g down disebabkan oleh power trip. Jenuh aku cari root cause punca website tu down.

Sebenarnya maintenance website ni bukan kerja aku pun. Tapi disebabkan team kat site sume lepas tangan, manager minta tolong aku. Aku sebenarnya malas nak buat tapi takpe la niat nak tolong jer la. Huhuhu

Problem kat website ni sebenarnya takde la complicated tapi kat error log tak bagitau problem sebenar. Kat website tu pulak cuma keluar Internal Server Error. Problem dengan Internal Server Error ni banyak sebenarnya so kena cari satu-satu punca. Abis semua configuration file, .htaccess file, database, Joomla component, hostname aku tengok.

Internal Server Error
Kalau ikutkan logik aku, takkan la sebab powertrip kacau configuration. Sebab mcm tak logik la kan. Yang jelas dan terang, bila masuk website tu macam hostname tu tak function. Mcm link ke hostname tu hilang. Tapi bila aku try file dalam folder under hostname tu dapat la pulak. Lagi la pelik.

Pastu bila aku try buka website tu pakai ip address instead of pakai hostname, error yang keluar jadi lain dah. Bukan lagi Internal Server Error, jadi Error Displaying Error Page. Lagi la pelik. Bila google problem ni pun, error tu macam tak lengkap sebab sepatutnya ada lagi error indicator yang sepatutnya error tu keluarkan.

Di pendekkan cerita, aku restart balik webserver nak tengok apa error log. Ade keluar uncaught SIGTERM, shutting down. Google error tu, ramai suggest untuk update apache dengan php. Aku update semua tu. Bila restart webserver, keluar lagi error sama Internal Server Error. Lepas tu aku terbaca kat forum camne nak run balik backup akeeba. Aku run backup akeeba tu. Bila akeeba tu dah success, kat website pakai hostname masih sama Internal Server Error, tapi kalau pakai ip address errornya dah lain. Ade problem kat database sebab ada satu table crash.
etc/httpd/logs/error_log
Ni pun jadi masalah lain pulak. Kan team site minta tolong kat aku. Aku pulak takde access ke database. Username dengan password database mana aku tau. Aku tanya dorang apa username dengan password database. Dorang pun tak pasti sapa yang tau. Puas aku tunggu, last-last aku godek balik kat configuration file. Sib baik ade kat situ. 

configuration.php
Lepas dapat masuk database tu, aku run la repair table tapi tak jalan. Ahhhh sudah, apsal pulak ni. Sambil pikir, sambil google baru la teringat, masa aku run repair table tu aku tak point lagi ke database mana. Huahahaha. Memang la tak jalan. Ini pun sebab aku terpikir nak tengok semua tables kat database tu. Patutnya lepas masuk ke database environment, kena point dulu ke database mana baru la boleh panggil semua table. Dah dapat tu aku run jer la repair table. Alhamdulillah settle masalah. Up gak website tu. 

So untuk reference masa depan, kalau website down disebabkan oleh power trip. Kemungkinan besar problemnya disebabkan oleh table session crashed. Solutionnya repair jer table ni then website akan up balik.

No comments: