Problem Solved : SilverStripe Cache Folder Doesn’t Exist!!

Tinggalkan komentar

Capwe Deeeh… sebenernya masalah ini cukup simple (setelah tau), cuman lumayan cari2 infonya di om Google sekitar sejam-an… :(. Jadi waktu itu saya lagi cari2 info tentang sistem sistem cache silverstripe, berniat buat meng-advance-kan sistem cache-nya. Tapi, sebenernya silverstripe sendiri dah ada sistem cache built-in nya, dan permasalahannya saya gak tau dimana dia nyimpen cachenya. Ya.. meskipun pada saat nulis artikel ini saya blm memutuskan buat mengimplementasikan advanced cache-nya (nanti dulu ah.. lieur).

Sebagai pengingat di kemudian hari, cara2 meng-advance-kan sistem cache silverstripe bisa dilihat di :

http://doc.silverstripe.org/staticpublisher

saya googling dan nemuin artikel buat menentukan custom TEMP_FOLDER dengan cara menambahkan file _ss_environment.php. Dan ada info bahwa secara default silverstripe menyimpan cache di folder yang namanya silverStripe-cache, perintah ini dapat dilihat di sapphire\core\core.php, bisa disearch di function getTempFolder(), line 179 (Silverstripe 2.3.7). Tapi permasalahannya, saya gak punya folder silverStripe-cache!! Lalu saya scroll core.php ke bawah dan ada tulisan di line 213 :

if(!$worked) {
user_error(“Permission problem gaining access to a temp folder. ” .
Please create a folder named silverstripe-cache in the base folder ”  .
“of the installation and ensure it has the correct permissions”, E_USER_ERROR);
}

Entah kenapa error tsb gak keluar pada saat buka web, tapi ya saya bikin aja folder silverstripe-cache di “site root“-nya. Jelas, asalnya tuh folder kosong, lalu saya lakukan “?flush=1” dan viola!! Saya cek tuh folder silverstripe-cache yang tadinya kosong, dan tiba2 penuh dengan file cache!! Ajaib emang silverstripe… 😉

NB : Nemuin info juga, buat merefresh semua cache, bisa dihapus semua isi folder silverstripe-cache dan lakukan “?flush=1“.

Hope this usefull… 😉

Problem Solved : Silverstripe MySQL tables, Windows/Linux differences

1 Komentar

Suatu saat, saya pernah pusing 7 keliling dalam mengimport database dari localhost (komputer saya) ke database hosting saya. Saya liat ternyata ada perbedaan dalam penulisan database, di localhost nama2 tabel databasenya pake hurup kecil semua, sedangkan di server hosting, nama2 tabelnya diawali dengan hurup besar. Contohnya : archivewidget (di localhost) dan ArchiveWidget (di Server Hosting). Sehingga, pada saat web saya diakses, ketemu error yang bunyinya “Error: gak bisa nemu database table buat ArchiveWidget.”

Nah lalu saya tanya om Google dan Alhamdulillah ketemu solusinya di http://www.silverstripe.org/archive/show/77595?start=0#post128453. Jadi permasalahannya: “This is because Silverstripe uses partially uppercase table names, but in Windows these are automatically converted to lowercase by MySQL.

Solusinya adalah sbb:

This fixes the problem without the need for any extra scripts:
In sapphire/core/model/MySQLDatabase.php, edit the following function (I just added lines 3-6):

public function checkAndRepairTable($tableName) {
if(!$this->runTableCheckCommand(“CHECK TABLE `$tableName`”)) {
if($this->runTableCheckCommand(“CHECK TABLE `”.strtolower($tableName).”`”)) {
Database::alteration_message(“Table $tableName: repaired”,”repaired”);
return $this->renameTable(strtolower($tableName),$tableName);
}
Database::alteration_message(“Table $tableName: repaired”,”repaired”);
return $this->runTableCheckCommand(“REPAIR TABLE `$tableName` USE_FRM”);
} else {
return true;
}
}

Dengan mengikuti arahan di atas, si database bakal membetulkan kesalahan penulisan secara otomatis, alhasil : archivewidget diubah otomatis jadi ArchiveWidget.

Oke deeh, semoga membantu!! 😉

SilverStripe Asyik!! (Khusus buat yang suka ngulik Coding)

Tinggalkan komentar

Ok, selama ini saya bikin web pake CMS wordpress. relative mudah sih, soalnya plugin2nya banyaaaak dan instalasinya gampang. Tapi, blm lama ini saya menekuni script lain yang namanya SILVERSTRIPE. Silverstipe ini, adalah langkah saya buat mengenal lebih dalam tentang coding PHP.

Kesan pertama pake silverstripe : PUSIIING, JANGAAAR!! ternyata ribet juga, bikin fitur yang kecil2 aja susahnya minta ampun. Tapi sensasinya: JAUH LEBIH MENANTANG!! apa lagi buat orang otodidak seperti saya… ;). Dari silverstripe, saya jadi kebantu buat mengenal lebih jauh tentang coding PHP. Pada dasarnya, kita gak perlu bantuan plugin dan lain2 kalo coding kita udah advance.

Silverstripe ini adalah CMS yang menggunakan Sapphire Framework dengan konsep MVC (Model, View, Controller). Sebelumnya saya pernah dikenalkan tentang framework oleh kakak saya, A Yudi. Waktu itu saya dikasih tau tentang CodeIgniter Framework, tapi sayang, ternyata terlalu berat untuk saya yang masih cupu, meskipun dokumentasinya lengkap. Kalo Silverstripe, dokumentasi lengkap dan webnya siap pakai, sehingga saya bisa belajar sambil praktek.

Saya coba simpulkan deh kelebihan2nya pake silverstripe :

  • Buat yang cupu seperti saya : Bagus buat meningkatkan kemampuan coding PHP; buat yang dah advance: Fully Customizable, there’s no restrictions on how your site looks (as the developer said)
  • Script2 yang dipake hanya yang butuh2 aja!! gak kayak wp, yang terlalu banyak script gak kepake yang ke”load” dan bikin berat.
  • Silverstripe pake sistem cache manual, yang bisa diakses ketika kita mengetik “?flush=1” di ujung URL (untuk refresh template), dan ketikhttp://www.YourSITE.com/medsilver/dev/build?flush=1” untuk merefresh database. Silverstripe melakukan sebagian besar cache di server hosting kita (bukan dicomputer user), sehingga yang ngalamin lemot cuman adminnya saja (pas ngelakuin “flush”), hal ini tentu saja bikin Silverstripe jadi cepet “load time”-nya…
  • Emang ada beberapa Extensions yang bisa ditemukan di web silverstripe.org, tapi pada intinya semuanya mengajari kita buat meningkatkan keahlian coding. Yang butuh didownload cuman modul2 tertentu saja seperti modul2 : blog, e-commerce, forum, image_gallery, dsb. (gmana butuhnya kita sih)

Bagi yang berminat, nih link ke web http://www.silverstripe.org/

Ok, enough for now!!