Crontab & Mail Blogging

November 1, 2007

Crontab

Apa itu crontab?, crontab (cron table) adalah suatu service di unix yang dapat menjalankan perintah secara berkala, jika anda menggunakan operating system windows mungkin anda terbiasa dengan scheduleSaya tuliskan definisi dari crontab yang aku ambil dari sini, sumber lain bisa dilihat di wikipedia.org

Definisi CronTab

crontab (cron table)

Schedule a command to run at a later time

Syntax
crontab [ -u user ] file
crontab [ -u user ] { -l | -r | -e }

Key

  • -l List - display the current crontab entries.
  • -r Remove the current crontab.
  • -e Edit the current crontab using the editor specified by theVISUAL or EDITOR environment variables.

Ada 3 argumen (perintah) dalam menjalankan crontab (lihat Syntax diatas) yaitu -l, -r dan -e masing2 digunakan untuk:

  • -l : melihat crontab yang terinstal
  • -r : remove crontab
  • -e : menampilkan editor default

untuk memilih editor bisa dilakukan dengan perintah

$ EDITOR=pico crontab -e

selain pico, ada beberapa editor lain seperti nano, emacs, vim. Tapi sebaiknya menggunakan default yang telah diset oleh webhosting kita, karena belum tentu editor lainnya terinstall di web server.

note: $ jangan di ketik. itu adalah default prompt.

Penggunaan

Contoh perintah:

#Jalankan wp-mail.php setiap menit ke 30

30 * * * * lynx -dump http://www.domainname.com/wordpressinstalldirectory/wp-mail.php

#end

keterangan dari perintah tersebut adalah sebagai berikut

* * * * * command to be executed
- - - - -
| | | | |
| | | | +—– Day of week (1 - 7) (monday = 1)
| | | +——- Month (1 - 12)
| | +——— Day of month (1 - 31)
| +———– Hour (0 - 23)
+————- Min (0 - 59)

* (bintang) tersebut mencantumkan kapan cron akan dijalankan, pada contoh diatas cron akan dijalankan pada menit ke-30 di setiap jam/setiap hari/setiap bulan/day of week apa saja. * (bintang) tersebut dapat diisi dengan :

  • single value
  • multiple value yang dibatasi dengan , (Comma) misal 2,4,6
  • range yang di batasi dengan - (tanda minus) misal 1-6

untuk perintah yang multiple value, misalnya jalan kan setiap 5 menit sekali maka bisa ditulis dengan

#Jalankan wp-mail.php setiap 5 menit

0,5,10,15,20,25,30,35,40,45,50,55 * * * * lynx -dump http://www.domain.com/wordpressinstalldirectory/wp-mail.php

#end

atau

#Jalankan wp-mail.php setiap 5 menit*/5 * * * * lynx -dump http://www.domain.com/wordpressinstalldirectory/wp-mail.php

#end

 
Enabled Post Via Email

Cara mengaktifkan posting via email di wordpress adalah sebagai berikut:

  1. Login ke Wordpres
  2. Menu Option - Writing
  3. Isi Option berikut
    Mail Server : isi dengan mail server anda misal : mail.domainname.com
    Login Name : isi dengan mail address anda misal : mailblog@domainname.com
    Password : isi dengan password mail anda
    Defaul Category : isi default category untuk posting dari mail
  4. Save

Untuk memastikan setting yang sudah dilakukan benar, coba untuk mengirimkan email ke alamat email yang telah disetting diatas, kemudian jalankan wp-mail.php. Lokasi wp-mail.php berada di root instalation wordpress anda misal : http://www.blog.domainname.com/wp-mail.php. Kemudian cek ke wordpress anda, jika posting dari mail tersebut masuk artinya setting diatas sudah benar.

Kemudian timbul pertanyaan apakah kita harus menjalankan wp-mail.php setiap kali kita melakukan posting via mail? pertanyan yang sama pernah aku pertanyakan lihat di posting saya terdahulu “Blogging Via Mail“. Jawabnya adalah TIDAK PERLU!.

Penting!, pastikan Wordpress anda versi 2.3 keatas, karena ada bugs di versi sebelumnya yang menyebabkan content dari email tidak terposting.

 
Integration

Langkah yang harus dilakukan adalah memanfaat kan crontab untuk melakukan posting, dengan cara yang telah diterangkan diatas, tetapi pastikan dulu bahwa anda mendapatkan akses ke fasilitas crontab di web hosting anda.

Cara mengaktifkan crontab

  1. Login ke Server anda, bisa menggunakan SSH Client, misal Putty
  2. Jalankan perintah crontab –e
  3. Pada crontab editor ketikan perintah
    mailto =”"
    */5 * * * * lynx -dump http://www.domain.com/wordpressinstalldirectory/wp-mail.php
  4. Pastikan akhiri dengan linefeed (menekan Enter), jika tidak crontab tidak akan aktif, percayalah aku sudah membuktikannya :D
  5. Konfigurasi waktu crontab dijalankan sesuai keinginan anda.
  6. Done

Tips:

  • mailto bisa diisi dengan alamat mail anda, crontab akan mengirimkan restilt dari perintah yang dijalankan ke email tersebut.
  • untuk melakukan testing, set crontab dengan durasi yang pendek, agar tidak terlalu lama menunggu nya :D

Selamat Mencoba…

 

0 comments

There are no comments yet...

Kick things off by filling out the form below.

Leave a Comment