The instant cure of most of our religious ills would be to enter the Presence in spiritual experience, to become suddenly aware that we are in God and that God is in us. - A.W.Tozer
Bible Study

Kumpulan Bahan Belajar Alkitab dalam format file pdf.

Computer & Internet

Semua tips komputer dan internet yang wajib untuk diketahui

Download

Wallpaper, Clipart, semua yang gratis ada di sini.

Jokes

Tempat melepas penat dengan tertawa.

Renungan

Tempat merenungkan kebaikan dan kasih setia Tuhan.

Home » Computer & Internet

Joomla: Halaman Kosong Setelah Save Artikel

Submitted by riel on 13/09/2009 – 7:16 AM | 302 views
1 Star2 Stars3 Stars4 Stars5 Stars (No Ratings Yet)
Loading ... Loading ...

Halaman Kosong Setelah Save Artikel di JoomlaSetiap kali saya hendak mem-posting satu artikel dengan isi yang lumayan besar (mis. 18 foto, 62.000 karakter tanpa spasi dengan 7 halaman breakpage) di Joomla, setelah meng-klik tombol Save atau Apply, yang muncul malah halaman kosong melompong (termasuk page source-nya). Halaman kosong ini lazim disebut Error 500. Berapa kali pun saya mengklik Save atau Apply, artikel tetap tidak tersimpan. Seharian saya mencari solusinya dan akhirnya saya tiba pada kesimpulan kalau ini adalah ‘bug’ di PHP 5.2.0 ke atas dan nilai setting di Suhosin yang terlalu rendah. Masalah ini tidak ada hubungannya dengan Joomla 1.5.14. Lalu upaya apa saja yang sudah saya lakukan?

Sebelum situs yang saya kelola (situs ABC) pindah ke server yang lebih baru, aktivitas mem-posting artikel besar di Joomla tidak menemui kendala yang berarti. Saat itu, saya menjalankan Joomla 1.5.12 dengan dukungan PHP 4.4.2 dan MySQL 4.x. Namun setelah situs tersebut di-migrasi-kan ke server yang lebih baru dengan dukungan PHPP 5.2.9 dan MySQL 5.0.81, saya tidak bisa lagi memposting artikel besar di Joomla (saat ini saya menggunakan Joomla 1.5.14).

Awalnya, saya menduga kesulitan mem-posting artikel besar di Joomla ini muncul karena ada module atau plugin yang kurang kompatibel dengan Joomla. Untuk mencari lebih jauh sumber masalah saya mencoba menampilkan/mengintip pesan error di halaman kosong melompong itu.

UPAYA #1: PESAN ERROR VIA JOOMLA?

  1. Saya mencoba memeriksa server error logs (bukan access logs) via CPanel. Namun informasi di dalamnya tidak banyak berguna (File does not exist: ……..404.shtml).
  2. Saya mencoba memeriksa error yang muncul via Joomla. Caranya, masuk ke Global Configuration | Server Tab | lalu set Error Reporting menjadi Maximum. Saya juga mengaktifkan Debug System via Tab System | Debug Settings.

Sayangnya, harapan saya agar Joomla memunculkan pesan error dengan kedua cara di atas tidak membuahkan hasil. Halaman kosong melompong (termasuk page source) tetap muncul setelah men-save artikel besar.

UPAYA #2: PESAN ERROR VIA .HTACCESS?

Saya kemudian mencoba cara selanjutnya dengan:

  1. Memasukkan kode berikut ini di configuration.php pada bagian akhir (paling bawah sebelum ?>):
    ini_set( ‘display_errors’, true ); error_reporting( E_ALL );
    Namun, halaman tetap kosong melompong (termasuk page source) tanpa pesan error apapun.
  2. Mengubah $error_reporting = ‘0′ di configuration.php menjadi $error_reporting = ‘2048′. Namun, halaman tetap kosong melompong (termasuk page source) tanpa pesan error apapun.
  3. Menyisipkan kode ini ke .htaccess:
    php_flag display_errors on
    php_value error_reporting 2048

    Namun, halaman tetap kosong melompong (termasuk page source) tanpa pesan error apapun.

UPAYA #3: MEMERIKSA MODULE/PLUGIN

Tidak mau patah arang, saya kemudian ‘bermain’ dengan mengaktifkan-nonaktifkan module atau plugin yang mungkin menjadi sumber masalah. Namun, masalah tetap ada.

UPAYA #4: DATABASE KAH?

Selain itu, saya yakin masalah ini tidak ada kaitannya dengan MySQL database (db functions). Pasalnya, tabel jos_content (intro dan fulltext field datatypes) sudah di-set mediumtext dan nilai max_packet_size (bila ukuran artikel dan semua kode SQL yang dibuat Joomla melebihi seting max_packet_size, server akan menolak query tersebut dan tidak muncul pesan error apapun karena secara teknis itu bukanlah error) di MySQL yang tadinya 1 MB sudah ditambah menjadi 16MB. Namun masalah tetap ada.

UPAYA #5: BIG ARTICLE PLUGIN

Saya kemudian browsing ke berbagai forum diskusi dan menemukan beberapa solusi yang hampir semuanya tidak menyelesaikan masalah. Saya mencoba mendownload dan mengaktifkan plugin ‘Big Article’. Menurut pembuat plugin ini, kita tidak bisa mem-posting artikel besar di Joomla karena munculnya opsi baru di PHP 5.2.0 ke atas. Opsi baru tersebut adalah opsi ‘pcre.backtrack_limit’ yang dianggap terlalu rendah nilainya sehingga menimbulkan keterbatasan bahkan pada regular expression (dikategorikan php bugs) sekalipun. Rendahnya limit ‘pcre.backtrack’ menyebabkan sebuah script yang gagal bekerja tidak memunculkan pesan peringatan atau error sehingga sulit untuk menjari jejak bugs dalam script tersebut.

Nilai opsi ‘pcre.backtrack_limit’ ini bisa diubah secara manual atau menggunakan plugin ‘Big Article’. Plugin ini bertugas meng-override nilai ‘pcre.backtrack_limit’ sehingga kita bisa mem-posting artikel besar. Download plugin-nya di sini. Setelah mengaktifkan plugin ini, saya tetap tidak bisa mem-posting artikel besar. Saya tiba pada kesimpulan, mengubah opsi ‘pcre.backtrack_limit’ secara manual atau via plugin tidak menyelesaikan masalah.

UPAYA #6: EDIT ARTIKEL VIA PHPMYADMIN

Mengedit artikel besar yang tidak bisa di-save langsung dari database (phpMyAdmin)

Saya kemudian mencoba upaya ke-6 (satu-satunya solusi yang bisa menyelesaikan masalah) yakni dengan mengedit artikel besar yang tidak bisa di-save itu langsung dari database (phpMyAdmin). Caranya:

  1. Saya login ke phpMyAdmin milik situs ABC
  2. Masuk ke: jos_content
  3. Gunakan menu/fungsi browse untuk melihat isi dari jos_content
  4. Di dalamnya akan muncul judul-judul artikel yang sudah tersimpan di database. Silakan cari judul artikel yang bermasalah (tidak bisa di-save karena terlalu besar). Ubah banyaknya jumlah baris yang ditampilkan (Show) dari 30 menjadi 200 agar lebih mudah mencari artikel tersebut
  5. Ctrl + F untuk mencari artikel berdasarkan judulnya
  6. Kalau sudah ketemu, klik tombol edit (bentuknya seperti pensil)
  7. Silakan update atau ganti isi artikel tersebut (introtext dan atau fulltext). Kalau sudah selesai, pilih Save.

Upaya ke-6 ini memang bisa mengatasi masalah memposting artikel besar di Joomla namun lumayan merepotkan. Selain itu, cara ini sangat tidak bersahabat (berisiko) bagi pengguna biasa (tugasnya cuma mem-posting artikel) sebab mereka kurang/tidak paham dengan phpMyAdmin.

UPAYA #7: MENGATASI SUHOSIN

Saya juga menemukan bahwa akar masalah atau penyebab tidak bisa mem-posting artikel besar di Joomla bersumber pada Suhosin. Suhosin berguna untuk melindungi skrip dari berbagai kelemahan Zend Engine dan serangan-serangan/exploit yang umum. Namun, karena proteksi tersebut, muncul beberapa keterbatasan di antaranya tidak bisa mem-posting artikel besar di Joomla.

Akar masalah atau penyebab tidak bisa mem-posting artikel besar di Joomla bersumber pada Suhosin

Untuk mengakali Suhosin, saya mencoba dua pendekatan, via php.ini dan .htaccess.

  1. Via php.ini. Karena situs ABC yang saya kelola menumpang di shared server, saya tidak bisa mengedit php.ini master (yang berwenang cuma server administrator). Saya kemudian mencoba menggunakan local php.ini di situs ABC (biasanya php me-load master php.ini tetapi juga me-load local php.ini jika di folder/sub domain terdapat php.ini). Dalam local php.ini tersebut saya masukkan kode berikut:
    php_value suhosin.post.max_value_length 5000000
    php_value suhosin.request.max_value_length 5000000

  2. Via .htaccess. Kode yang sama seperti di atas saya masukkan ke dalam file .htaccess.

Kedua cara ini (php.ini dan .htaccess) ternyata tidak bisa digunakan di server situs ABC. Saya kemudian menanyakan perihal suhosin ini ke pihak server provider apakah bisa di-disable atau nilainya diubah. Jawaban yang mereka berikan adalah “Suhosin values are not set per account and for security reasons we cannot raise this value globally. If you require this setting to be set globally, I suggest looking into purchasing a VPS system. With a VPS you can set any global settings you desire.”

UPAYA #8: WAIT AND SEE

Gubrak!! Setelah seharian mencoba mengatasi masalah ‘tidak bisa men-save artikel besar di Joomla’ ini, saya akhirnya pasrah dan menunggu. Mudah-mudahan bugs di PHP 5.2.0 ke atas ini cepat-cepat diperbaiki. Saya juga berharap dalam Joomla versi terbaru (1.5.15 ke atas), masalah ini mungkin akan pergi sendiri.

Popularity: 1% [?]

  • Share/Bookmark

Tulisan Terkait

6 Comments »

Leave a comment!

Add your comment below, or trackback from your own site. You can also subscribe to these comments via RSS.

Be nice. Keep it clean. Stay on topic. No spam.

You can use these tags:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

This is a Gravatar-enabled weblog. To get your own globally-recognized-avatar, please register at Gravatar.