Behind the code..
Posts tagged PHP
Kehilangan Codeigniter Session pada IE & Chrome
Nov 22nd
Beberapa bulan terakhir ini lg ngerjain project aplikasi web, dimana aplikasi ini gw buat multiuser. Kebetulan menggunakan codeigniter sebagai frameworknya. Disini gw buat 2 tipe autentifikasi.
- Admin, merupakan administrator web bersangkutan. Disini gw buat system autentifikasi ngegunain session native. Maksudnya supaya Admin nge-close browser maka session akan mati dengan sendirinya.
- Member. Halaman ini ditujukan untuk all member. Disini gw ngegunaiin session CI untuk autentifikasinya. Maksudnya klo member mo ngebuka aplikasi lg, dan ga sengaja nge-close browsernya, maka member dapat langsung masik halaman terotentifikasi, ini karena session CI menggunakan cookies.
Untuk testing browsernya gw pake Google chrome, Mozilla Firefox, ma IE.
Gw testing di localhost pake tu 3 browser, and hasilnya bagus, dalam artian ga ada masalah ma session2nya. Dihari berikutnya, gw coba di LAN, sekalian isi contentnya gitu, and semuanyta berjalanlancar brow, ga ada masalah sedikitpun.
Dan seminggu setelahnya gw coba di web hosting yang gw sewa… Minggu2 pertama sich baik2 aja, meski gw ga tes satu persatu, alias gw pake mozilla firefox untuk setiap kli browsing…
Gw, baru sadar pas minggu ketiga… pada aplikasi multi user tersebut telah ada yang mendaftar sebanyak kurang lebih 40 orang. Tp tujuh diantaranya tidak pernah LOGIN, ini bisa dilihat dari halaman admin, padahal accountnya dah gw aktifin… Beberapa hari gw sempet bingung, gw umumin ke milis untuk angkatan (kebetulan situs yang gw kerjain situs angkatan) supaya 7 user bersangkutan login, tp tidak kunjung login…
Nah, disini gw mulai curiga. Gw tes deh tu aplikasi untuk di browse dari 3 browser tadi. Tes pertama gw coba login ke halaman admin, all browser support (alhamdullilah). Yang kedua, gw coba login ke halaman member, suck, ternyata hanya bisa login klo pakai Mozilla Firefox, disitu dech gw kebakaran jenggot… Coba2 nyari apa ada di script, dan tidak kunjung ditemukan… Akhirnya gw tanya dech ke milis CI (codeigniter-id@yahoogroups.com). Setelah beberapa Apply dari temen-temen milis CI Indonesia, akhirnya didapatkan kesimpulan ini:
Klo dah di online-nin, alias dah punya url kyk gini http://www.mysite.com, maka ada konfigurasi yang musti dirubah, dan perubahan yang dilakukan ini hanya dilakukan bila Anda menggunakan sessionnya Codeigniter:
filenya ada di ./system/application/config/config.php
Yang Pertama, Cari configurasi:
$config['sess_match_useragent'] = TRUE;
Ubah jadi
$config['sess_match_useragent'] = FALSE;
Yang Kedua, cari konfigurasi:
$config['cookie_domain'] = “”;
Ubah jadi
$config['cookie_domain'] = “mysite.com”;
Perlu diingat, jangan menggunakan http://www.mysite.com atau www.mysite.com, tp bila menggunakan sub domain, misal blog, maka gunakan blog.mysite.com
Ok, untuk saat itu gw rasa masalah dah kepecahin,tp ternyata blom brow…
Beberapa hari kemudian gw pake Browser Google Chrome, ternyata member ga bisa login ![]()
Ternyata masalah blom kunjung selesai. Selanjutnya gw bongkar lagi milisnya, dan ternyata dah ada yang jawab untuk masalah itu, kesimpulannya seperti ini:
Buka kembali file config.php diatas, dan kita harus merubah nama sessionnya:
Asal mula:
$config['sess_cookie_name'] = ‘ci_session’;
Ubah Jadi
$config['sess_cookie_name'] = ‘cisession’;
Yupz, benar hilangkan Under Scorenya, dan semuanya berjalan sebagai mestinya…
Meskipun ilmu masih kurang, tp semoga ini membantu buat rekan2 yang bergelut dengan framework CI… Thank’s buat Mas Ibnoe dan Pak Natali Ardianto yang memecahkan masalah ini, dan tentunya All CI Indonesia yang tergabung dalam milis… Sukses untuk smua.
-Apriza-