SLiMS Open Source Library Management System (SLiMS) adalah sebuah manajemen koleksi perpustakaan daring. Selain keanggotaan, kode batang, dan pengaturan koleksi, SLiMS mendukung OPAC dengan pustaka Javascript terbaru. Sayangnya, dia hanya mendukung basisdata MySQL (MariaDB, Percona, dan sejenisnya), tetapi tidak PostgreSQL. Padahal, PostgreSQL lebih bagus dibandingkan dengan MySQL.
Kali ini menjelang pulang kantor saya akan memasang SLiMS dengan menggunakan sistem berbasis NGINX, PHP-FPM, dan MySQL. Ingat, kawan-kawan, ini adalah sebuah keisengan. Jangan lupa untuk riset lebih lanjut. Saya membangun sistem ini dari BlankOn 9 hasil debootstrap.
Memasang Hal-hal Dasar
Mari kita hal-hal dasar sebelum memasang Senayan
Memasang Sistem Dasar
Mari memasang aplikasi-aplikasi yang diperlukan.
$ sudo apt-get install nginx php5-fpm mysql-server php5-mysqlnd php5-gd
NGINX, PHP5-FPM, dan MySQL dipasang. Saya menggunakan MySQL Native Driver (MySQL ND) bukan libmysqlclient. Hal ini karena MySQL ND lebih efisien.(Andrea Usu, 2010) Tak lupa saya juga memasang PHP GD karena SLiMS menggunakannya untuk memroses gambar dan kode batang.
Membuat Basisdata
Lalu mari buat sebuah basisdata Senayan:
$ sudo mysql --defaults-file=/etc/mysql/debian.cnf
Debian menggunakan berkas konfigurasi untuk masuk sebagai administrator MySQL. Berkas konfigurasi ini tidak dapat diakses kecuali oleh root.
mysql> create database senayandb; mysql> grant all privileges on senayandb.* to senayan@localhost identified by 'senayan123'; mysql> flush privileges;
Setelah itu, keluar dari klien PostgreSQL.
mysql> \q
Anda tentunya tidak akan menggunakan senayan, senayandb, dan “senayan123”, ‘kan? Anda tidak sebodoh itu, ‘kan? Gunakan nama yang lain yang lebih aman!
Memasang Senayan
Saatnya mengunduh Senayan:
$ wget http://slims.web.id/download/slims7-cendana-stable.tar.gz
Lalu memekarkan berkas tersebut:
$ tar xvfz slims7-cendana-stable.tar.gz
Entah mengapa seluruh berkas yang saya ekstraksi memiliki izin 755. Artinya, setiap berkas tersebut rawan untuk bisa dieksekusi. Sebelum diolah lebih lanjut, mari kita betulkan:
$ find slims7_cendana-slims7-cendana/ -type f -exec chmod 644 {} \;
Pindahkan ke /var/www dan buat menjadi milik www-data
$ sudo mv slims7_cendana-slims7-cendana /var/www $ sudo chown -R 33:33 /var/www
Saatnya mengaktifkan NGINX. Buat konfigurasi situs. Saat ini saya membuat konfigurasi situs berdasarkan /etc/nginx/sites-available/default. Anda dapat mengutak-atik lebih lanjut.
$ cat >> slims < EOF server { listen 80 default_server; listen [::]:80 default_server ipv6only=on; root /var/www; index index.html index.htm index.php; # Make site accessible from http://localhost/ server_name localhost; location / { # First attempt to serve request as file, then # as directory, then fall back to displaying a 404. try_files $uri $uri/ =404; # Uncomment to enable naxsi on this location # include /etc/nginx/naxsi.rules } # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000 # location ~ \.php$ { fastcgi_split_path_info ^(.+\.php)(/.+)$; # NOTE: You should have "cgi.fix_pathinfo = 0;" in php.ini # With php5-cgi alone: #fastcgi_pass 127.0.0.1:9000; # With php5-fpm: fastcgi_pass unix:/var/run/php5-fpm.sock; fastcgi_index index.php; include fastcgi_params; } # deny access to .htaccess files, if Apache's document root # concurs with nginx's one # location ~ /\.ht { deny all; } } EOF $ sudo cp slims /etc/nginx/sites-available/slims $ rm slims
Cara menyunting konfigurasi ini sebenarnya dapat dilakukan dengan mudah menggunakan penyunting favorit Anda (ViM, EMACS, pico, dll.)
$ sudo $EDITOR /etc/nginx/sites-available/slims
Isi dengan konfigurasi yang diwarnai merah. Perhatikan, ganti localhost dengan domain Anda yang benar.
Sekarang, saatnya mengaktifkan SLiMS dan menonaktifkan konfigurasi baku.
$ sudo rm -f /etc/nginx/sites-enabled/default $ sudo ln -sf /etc/nginx/sites-available/slims /etc/nginx/sites-enabled/slims
Setelah itu, saatnya menyalakan ulang NGINX.
$ sudo invoke-rc.d nginx restart
Selesai. Selanjutnya tinggal mengarahkan peramban kepada situs kita.
Mengonfigurasi Situs
Kalau Anda telah selesai mengonfigurasi dengan benar, maka tampilan pertama dari SLiMS di peramban adalah laman pemasangan.
Pilih "Let's Start The Installation" untuk lanjut. Maka pada laman berikutnya akan ditampilkan isian untuk mengonfigurasi.
Halaman kedua intinya untuk mengonfigurasi basisdata dan admin SLiMS. Contoh yang saya isi untuk isian tersebut:
Database Host | localhost |
---|---|
Database Name | senayandb |
Database Username | senayan |
Database Password | ********** |
Generate Sample Data | Yes |
Username | pustakawan |
Password | ************* |
Retype Password | ************* |
Saya memilih untuk memasang data contoh agar mendapatkan gambaran mengenai apa itu SLiMS. Nanti kalau sudah digunakan secara penuh, tentunya data contoh ini tak perlu dipasang. Bahkan, dapat dihapus begitu saja. Setelah mengisi itu semua, pilih "Continue" untuk lanjut ke halaman terakhir.
Halaman terakhir memberikan rekomendasi untuk menghapus direktori "install/". Namun sebelumnya, mari memulai SLiMS dengan memilih "OK, start the SLiMS". Maka, Anda akan dibawa ke laman depan SLiMS.
Seperti rekomendasi pemasang SLiMS, mari hapus direktori pemasangan dan juga membetulkan perizinan berkas yang ada.
$ sudo rm -rf /var/www/install $ sudo chmod 644 /var/www/sysconfig.local.inc.php
Sampai sini proses konfigurasi awal berhasil. Anda sudah dapat berpuas diri dan berpesta ria. Selanjutnya adalah proses yang saya hendak lakukan di dalam SLiMS agar lebih bagus. Tapi, itu, 'kan, tergantung selera masing-masing.