Redireksi tanpa mengubah alamat pada address bar

Redireksi adalah proses memindah alamat url ke alamat yang lain. Sebagai contoh, Anda bisa mengetikkan http://www.contoh1.com tetapi saat Anda tekan enter, halaman yang muncul adalah halaman di http://www.contoh2.com.

Pengalihan seperti di atas bisa dilakukan dengan berbagai cara, misalnya dengan javascript:

<script type="text/javascript">
location.replace("http://www.contoh2.com");
</script>

Jika script di atas ditempatkan pada index.html di http://www.cotoh1.com, maka halaman yang akan ditampilkan di browser akan diganti dengan isi dari http://www.cotoh2.com.

Selain dari digantinya tampilan di browser, alamat yang ditampilkan di address bar juga akan diganti dengan alamat yang baru. Ada kalanya hal seperti ini memang diinginkan. Tetapi pada kasus lain, kita mungkin tidak ingin pengunjung website kita mengetahui bahwa halaman yang ditampilkan bukan berasal dari alamat yang dia ketikkan di address bar.

Contoh yang mungkin masuk akal untuk dilakukan adalah seperti berikut. Kita mempunya beberapa domain, katakanlah 3 domain. Semuanya diatur menggunakan CMS WordPress. Ukuran dari wordpress kurang lebih 10MB. Dengan demikian, Anda harus menyewa hosting yang ukurannya harus lebih besar dari 10MB. Jadi minimal Anda harus menggunakan hosting dengan kapasitas misalnya 50M. Kapasitas biasanya telah ditentukan dalam ukuran-ukuran tertentu. Jadi walaupun ditambah dengan ukuran database untuk isinya hanya butuh 15MB, tetapi ukuran ini bisa jadi tidak ada.

Tanpa redireksi, Anda harus menyewa 3 x hosting 50MB walau sebenarnya Anda hanya butuh 3 x 15MB. Akan tetapi dengan redireksi, Anda hanya butuh menyewa satu hosting dengan kapasitas 50MB, sedangkan dua lainnya cukup dengan ukuran tidak lebih dari 10KB. Ada beberapa provider yang menyediakan kapasitas sangat kecil dengan biaya yang sangat murah, sehingga bisa kita anggap gratis. Layanan ini biasanya diberikan untuk orang-orang yang telah memiliki domain, akan tetapi belum sempat membangunnya. Sehingga dia hanya butuh untuk menampilkan misalnya “Under construction”, yang tentu saja ukurannya memang sangat kecil.

Dengan teknik redireksi, kita bisa memanfaatkan fasilitas ini untuk dua domain kita yang lain.

Jadi bagaimana mengaturnya?

Pertama, pada hosting dengan kapasitas 50MB tersebut, kita buatkan subdomain. Misalnya nama domain untuk hosting tersebut adalah sulhansetiawan.com, maka kita bisa membuat dua buah subdomain seperti aa.sulhansetiawan.com dan bb.sulhansetiawan.com. Subdomain-subdomain ini hanyalah subdomain alias bagi sulhansetiawan.com. Kebanyakan provider hosting memberikan fasilitas ini. Jadi sulhansetiawan.com bisa dicapai dengan aa.sulhansetiawan.com maupun bb.sulhansetiawan.com juga.

Untuk apa kita membuat subdomain tetapi menunjuk dirinya sendiri?

Seperti yang telah disebutkan di atas, bahwa CMS yang kita gunakan adalah WordPress. Oleh karena itu, editlah file wp-config.php pada bagian pengisian $table_prefix. Biasanya variabel ini diisi dengan $table_prefix=’wp_’;

Lakukan perubahan sehingga menjadi:

if("aa.sulhansetiawan.com"==$_SERVER['HTTP_HOST'])$table_prefix='aa_';
elseif("bb.sulhansetiawan.com"==$_SERVER['HTTP_HOST'])$table_prefix='bb_';
else $table_prefix='ss_';

Jadi, walaupun baik sulhansetiawan.com, aa.sulhansetiawan.com, maupun bb.sulhansetiawan.com, menuju pada tempat yang sama, akan tetapi halaman yang ditampilkan akan berbeda karena menggunakan tabel yang berbeda.

Setelah pengaturan wp-config.php, langkah selanjutnya adalah login ke wp-admin dari ketiga domain tersebut, masuklah sebagai sulhansetiawan.com, sebagai aa.sulhansetiawn.com, dan sebagai bb.sulhansetiawan.com

Untuk login sebagai sulhansetiawan.com, tentu saja lakukan pengaturan untuk domain sulhansetiawan.com itu sendiri. Sedangkan untuk yang aa.sulhansetiawan.com dan bb.sulhansetiawan.com, tentu saja pengaturannya dilakukan untuk dua domain lainnya. Sebagai contoh, jika aa.sulhansetiawan.com akan digunakan untuk domain http://master-micro.com, maka pengaturan untuk aa.sulhansetiawan.com juga harus dibuat sedemikian rupa seolah-olah kita sedang mengatur http://master-micro.com. Dan hal yang paling penting untuk masalah ini adalah pada option-general.

Masuklah ke option-general. Pada bagian WordPress address (URL) biasanya telah diisi dengan benar, akan tetapi, karena kita akan menggunakan wordpress ini untuk http://master-micro.com, maka pada bagian Blog address (URL) kita isi dengan “http://master-micro.com”. Dengan cara ini, setiap link-link yang dibuat oleh Wordpres akan menggunakan alamat http://master-micro.com.

Lakukan dengan cara yang sama untuk bb.sulhansetiawan.com.

Langkah selanjutnya adalah mengisi hosting untuk dua domain lainnya agar mengarah masing-masing ke aa.sulhansetiawan.com dan bb.sulhansetiawan.com. Kita hanya butuh tiga pengaturan.

Pertama, kita atur php.ini agar mengijinkan pembacaan dari url lain yaitu dengan menambahkan baris

allow_url_fopen = On

Kedua, kita buatkan file .htaccess yang isinya seperti berikut:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

Ketiga, kita buatkan file index.php yang isinya:

<?php
$redirx="http://aa.sulhansetiawan.com".$_SERVER['REQUEST_URI'] ;
echo file_get_contents($redirx);
?>

Untuk domain yang lainnya, cukup hanya mengganti bagian http://aa.sulhansetiawan.com menjadi http://bb.sulhansetiawan.com.

Nah, dengan adanya file index.php ini pada DocumentRoot di master-micro.com, maka saat ada orang mengakses master-micro.com, isi yang akan ditampilkan diambilkan dari aa.sulhansetiawan.com. Dan pengunjung sama sekali tidak akan menyadari bahwa yang mereka lihat sebenarnya diambilkan dari tempat lain.

Selamat mencoba.

Apakah Anda menyukai post ini? Mengapa tidak memberikan komentar di bawah dan melanjutkan perbincangan, atau berlangganan my feed dan dapatkan artikel semacam ini yang dikirm secara otomatis feed reader Anda.
Harap diperhatikan bahwa komentar atau pertanyaan yang disampaikan haruslah sesuai dengan topik yang sedang dibahas. Komentar atau pertanyaan yang tidak sesuai dengan topik akan kami hapus :!:

Tinggalkan komentar

Sebelum membuat komentar, pastikan Anda telah membaca komentar-komentar sebelumnya. Jangan membuat pertanyaan yang telah ditanyakan. Perhatikan pula link-link dalam artikel. Lihatlah link tersebut sebelum membuat pertanyaan, karena mungkin penjelasan dari pertanyaan Anda telah di jawab dalam link tersebut.

Komentar yang tidak mengikuti aturan ini akan dihapus!

(wajib)

(wajib)


Time limit is exhausted. Please reload the CAPTCHA.