Trik Pasang Banyak Blog WordPress di Satu Server
Misalkan kita memiliki sebuah server dengan domain science.com. Server ini ingin ditambahkan beberapa blog WordPress dengan alamat :
- math.science.com
- physics.science.com
- chem.science.com
Langkah-langkah yang harus dikerjakan, antara lain :
- setting subdomain pada DNS
- membuat virtual host
- memasang wordpress di masing-masing virtual host
Asumsi setting subdomain pada DNS telah dilakukan. Langkah selanjutnya, umumnya admin akan meng-copy folder wordpress sebanyak tiga kali, untuk masing-masing blog yang ingin dibuat. Contohnya :
- wordpress-math/
- wordpress-physics/
- wordpress-chem/
Kemudian admin membuat 3 database yang berbeda, dan menyesuaikan konfigurasi database di file wp-config.php pada tiap folder wordpress. Terakhir, setting virtual host dari tiap subdomain akan memiliki document root sesuai dengan folder masing-masing :
- math.science.com -> wordpress-math/
- physics.science.com -> wordpress-physics/
- chem.science.com -> wordpress-chem/
Cara ini memang simpel dan mudah dilakukan, namun memiliki beberapa kekurangan. Contohnya, ketika admin ingin menambahkan theme atau plugin baru ke semua blog, ia harus mengcopy-nya sebanyak 3 kali ke masing-masing folder di atas. Bayangkan jika server kita harus meng-host ratusan bahkan ribuan blog, tentu merupakan pekerjaan yang melelahkan.
Aku punya trik mudah untuk menjawab permasalahan di atas. Aku hanya memakai sebuah folder wordpress sebagai document root untuk semua blog dari virtual host yang ada. Jadi, jika dikaitkan dengan contoh di atas, subdomain math, physics, dan chem memiliki setting document root yang sama, sebut saja : wp-master/. Sehingga, apabila aku menambahkan sebuah theme atau plugin baru di folder wp-master/, semua blog akan dapat langsung menggunakannya.
Untuk membedakan blog math, physics, dan chem, cukup membuat file konfigurasi database khusus untuk masing-masing blog. Trik ini bekerja dengan memodifikasi file wp-config.php pada folder wp-master/ dengan script ini :
Pada contoh ini, kita akan memakai satu database untuk satu blog, sehingga dibutuhkan 3 buah database. File wp-config.php yang sudah dimodifikasi ini tidak berisi definisi database (seperti DBNAME, DBUSER, dst), karena definisi inilah yang akan kita “mainkan” untuk setiap blog / virtual host.
Script di atas akan me-load file php yang disimpan pada folder wp-config/ sesuai dengan variabel SERVER_NAME yang disediakan oleh php. Folder wp-config/ berisi file definisi database khusus untuk tiap blog. Contohnya adalah :
- math.science.com.php
- physics.science.com.php
- chem.science.com.php
Contoh Isi file math.science.com.php adalah sebagai berikut :
<?php define(’DB_NAME’, ‘wpdb_math’); define(’DB_USER’, ‘wpdb_math_user’); define(’DB_PASSWORD’, ‘wpdb_math_pass’); define(’DB_HOST’, ‘localhost’); define(’DB_CHARSET’, ‘utf8′); define(’DB_COLLATE’, ”); ?>Jangan lupa menambahkan file default.science.com.php (dapat berisi fungsi die dan menginformasikan bahwa situs yang diminta tidak ditemukan).
Apabila user me-request situs http://math.science.com, maka wordpress akan me-load konfigurasi database dari math.science.com.php. Begitu juga dengan kasus user mengakses http://physics.science.com atau http://chem.science.com, file konfigurasi database yang di-load adalah physics.science.com.php atau chem.science.com.php.
Dengan trik yang sama, kita dapat menggunakan hanya sebuah database untuk ketiga blog tersebut. Kali ini, yang di-”mainkan” bukan konfigurasi database-nya, melainkan variabel “$table_prefix”. Selamat Mencoba!
13 Comments »
Leave a comment
Tentang blog ini..
La Vida, berarti kehidupan
La Lucha, berarti perjuangan
Blog ini adalah penerus dari website pribadi milik Aisar Labibi Romas yang beralamat di http://students.itb.ac.id/~aisar
liat profil lengkap, ato komentarin blog ini?
[klik disini]
-
Archives
- June 2008 (2)
- May 2008 (6)
- April 2008 (5)
- March 2008 (3)
- February 2008 (4)
- January 2008 (4)
- December 2007 (4)
- November 2007 (3)
- October 2007 (16)
-
Categories
-
RSS
Entries RSS
Comments RSS

wah… berguna
mw nyobain, ah
ini baru opreker
bisa nggak ya diterapin di intranet? trims
@restya : harus bisa.. :p
@mas reza : wah, mas reza lebih ngeri ngoprek WP-nya
@wahyuPur : klo intranetnya ga punya subdomain, berarti mainin Alias di apache. ntar bagian
$curSite = $_SERVER[’SERVER_NAME’];
diubah biar “ngeparsing” alias-nya dari request_uri, bukan server_name.
agak ribet emang.. blom pernah nyoba juga.. met mencoba
[...] Tricks on Hosting Multiple WordPress Sites (versi indonesia ada di sini) [...]
wah top markotop sar… mantap..
trik ini biasa dipake juga di website multiLang yg belum pake modul languages terpisah…
[...] Seru Install Banyak WordPress di Satu Domain Kalau di artikel sebelumnya kita bisa memiliki banyak blog WordPress dengan subdomain yang berbeda, sekarang akan dijelaskan [...]
Bagus juga artikelnya. BElajar dimana nih
keep work
wah…boleh nich coba..
ada artikel yang lebih baru, yang pasang blog wordpress di satu domain doang (tanpa subdomain).. selamat mencoba
dalem banget pembahasannya. bermanfaat
Aku mau suruh kakak coba,he..Tips Posting dengan Mobile WordPress - Tips Trik Blog Optimization. Klik namaku (baliblogier.wordpress.com)
Wuih ngeri bgt ni tips. Tp ak g yakin bs nyoba..Terus bwt yg ginian ya..