Minggu, 29 April 2012

Tutorial Rewriting dengan .htaccess

Langkah  Tutorial HTACCESS

tools yang digunakan notepad

Cara Mengaktifikan module mod_rewrite web server Apache

Sebelum memulai, kita melakukan aktifasi module mod_rewrite web server Apache. Caranya:
  1. Cari dan edit file httpd.conf
  2. Cari teks berikut :
    #LoadModule rewrite_module modules/mod_rewrite.so
  3. Hilangkan tanda pagar (#), sehingga menjadi:
    LoadModule rewrite_module modules/mod_rewrite.so
  4. Simpan, restart web server Apache

 

Cara Membuat file .htaccess

File .htaccess merupakan file teks biasa, cara membuatnya gunakan text editor seperti winsyntax atau notepad++. Ketik pada text editor anda kode berikut:
RewriteEngine On
RewriteBase /situsberita/
RewriteRule ^berita([0-9]+)-(.*)\.html$ selengkapnya.php?id=$1
lalu simpan dengan nama .htaccess, pada contoh di atas saya menyimpan file .htaccess di folder situsberita yang berada di document root anda. Jadi pada contoh berikut kita akan membuat situs berita, di mana file file situs berita kita taruh di folder yang kita beri nama situs berita, sehingga kalau anda buka di browser urlny adalah: http://localhost/situsberita
Keterangan kode:
  • RewriteEngine On, Mengaktifkan RewriteEngine
  • RewriteBase /situsberita/, karena kita menaruh file .htaccess di folder situsberita dan url yang akan di-rewrite adalah http://localhost/situsberita/
    Jika anda ingin me-rewrite http://localhost/ makan kodenya RewriteBase /
  • RewriteRule, berguna untuk mecari pola url dan jika ketemu akan mereplacenya dengan url yang kita inginkan.
    Sintaks:
    RewriteRule pola_URL <spasi> URL_pengganti
  • pola_URL, menggunakan regex
  • ^berita([0-9]+)-(.*)\.html$, artinya cari pola url yang diawali tulisan berita, kemudian ada angka kemudian diikuti strip tengah (-) kemudian ada karakter atau tulisan apapun, diakhiri dengan .html
    akan cocok dengan berita12-bla-blabla.html, berita233-terserah-tulisan-apa-disini.html, dan lainnya
     
    Meta Karakter Definisi Contoh
    ^ Pencocokan di awal string ^hai akan cocok dengan haiii, haiapakabar
    $ Pencocokan di akhir string tes$ akan cocok dengan pantes, kates
    . Cocok dengan satu karakter apapun
    * Berjumlah 0 atau lebih
    + Berjumlah 1 atau lebih
    ( ) Pengelompokkan pola
    [ ] Pendefinisian kelas karakter [0-9] akan cocok dengan angka
    [a-z] akan cocok dengan huruf kecil
    [^a-z] bukan huruf kecil
    \ Escaping karakter, berguna bila ingin mencocokkan karakter, tetapi karakter tersebut merupakan anggota meta karakter Ingin mencocokkan titik, maka kode regexnya adala \.
    (silahkan pelajari tentang regular expression)
  • selengkapnya.php?id=$1, adalah url pengganti jika ditemukan pola di atas. $1 adalah pola yang cocok yang ditemukan dalam pengelompokan pola. Pengelompokan pola ada pola yang berada di antara ( dan )
    Pada pola regex di atas:
    $1 adalah ([0-9]+)
    $2 adalah (.*)

 

Cara Membuat tabelberita pada database MySQL

Saatnya kita mengaplikasikan URL Rewriting dalam bentuk aplikasi situs berita kita, berikut adalah struktur tabel tabeberita di MySQL

CREATE TABLE `tabelberita` (
  `beritaid` int(11) NOT NULL auto_increment,
  `judul` tinytext NOT NULL,
  `tanggal` date NOT NULL,
  `kategori` varchar(30) NOT NULL,
  `pendahuluan` text NOT NULL,
  `lanjutan` text NOT NULL,
  PRIMARY KEY  (`beritaid`)
) 

 

Cara Menampilkan berita dan meng-generate URL yang SEO friendly

Berikut kode PHP untuk mengambil data dari database MySQL kemudian menampilkan 10 berita terbaru, kemudian kita membuat link url untuk selengkapnya.

<?php
include "koneksi.php";

$berita = mysql_query("SELECT * FROM tabelberita ORDER BY beritaid DESC LIMIT 10");
while($b = mysql_fetch_array($berita)){
    //mengubah spasi menjadi -
    $judul = preg_replace("/\s/","-",$b['judul']);

    //menambahkan kata "berita" pada awal url dan ".html" pada akhir url
    $url_link = "berita".$b['beritaid']."-".$judul.".html";

    echo "<a href=\"".$url_link."\"><h2>".$b['judul']."</h2></a>";
    echo "<font color=red>".$b['tanggal']." Ketegori: ".$b['kategori']."<br></font>";
    echo $b['pendahuluan']."<br>";
    echo "<a href=\"".$url_link."\">Selengkapnya</a>";
    echo "<hr>";
}
?>

 

Menampilkan berita selengkapnya yang berasal dari URL SEO friendly menggunakan PHP dan MySQL

Berikut adalah kode PHP untuk menampilkan berita selengkapnya jika user mengklik link selengkapnya, seperti contoh berikut : http://localhost/situsberita/berita3-Jangan-Takut-untuk-Donor-Hati.html

<?php
include "koneksi.php";
$id = $_GET['id'];
$berita = mysql_query("SELECT * FROM tabelberita WHERE beritaid=$id");
while($b = mysql_fetch_array($berita)){
    echo "<a href=\"".$url_link."\"><h2>".$b['judul']."</h2></a>";
    echo "<font color=red>".$b['tanggal']." Ketegori: ".$b['kategori']."<br></font>";
    echo $b['pendahuluan']."<p>";
    echo $b['lanjutan'];
}
?>
 
 
 
 
 
 
 
 
 
trims
codingwear 

oleh fsakti FASANA IT | Tutorial Computer Updated at : 01.31
Anda suka artikel di atas ???
Klik salah satu atau ketiga tombol di bawah ini :

Jangan Lupa Baca Juga :

4 komentar:

lengkap sekali pmbahasannya, izin menyimak dulu biar lebih mengerti
trims

Gamblang sekali pembahasanya boss.., Izin ngeprint artikelnya...

gan htacces itu kan ketika digunain untuk ngerubah url , contoh www.coba.com/index.php?page=berita(asli) dijadiin www.coba.com/berita(settingan) pastinya kan untuk memanggil url tersebut harus make yang (settingan) dan ketika memanggil url yang (asli) pasti ada pesan error tapi kenapa milik ane ini kedua" url tersebut bisa di panggil semua tanpa ada pesan error. ,,,, (saya ujicoba itu di localhost)

gan htacces itu kan ketika digunain untuk ngerubah url , contoh www.coba.com/index.php?page=berita(asli) dijadiin www.coba.com/berita(settingan) pastinya kan untuk memanggil url tersebut harus make yang (settingan) dan ketika memanggil url yang (asli) pasti ada pesan error tapi kenapa milik ane ini kedua" url tersebut bisa di panggil semua tanpa ada pesan error. ,,,, (saya ujicoba itu di localhost) tolong dong pencerahannya,.

 
Ke bawah Ke ATAS