Jumat, 28 Oktober 2016

Pengertian HTML, Css, Javascript dan Jquery

Pengertian HTML, Css, Javascript dan Jquery


Pengertian HTML, Css, JavaScript dan jQuery - Sebelum kita merambah pada pembahasan materi Bedah Template Blogger setidaknya kita harus mengerti komponen dan format apa saja yang digunakan pada struktur template blogger itu sendiri.
Pada dasarnya setiap template atau halaman website dibangun dengan tiga komponen dasar yakni HTML,Css, dan JavaScript. Adapun pengembangannya akan kita bahas di materi selanjutnya.
Lalu apa itu HTML, Css dan JavaScript?

Pengertian HTML, Css dan JavaScript


HTML : HyperText Markup Language adalah sebuah markah dasar untuk membentuk sebuah website, dalam hal ini bisa disebut dengan frame/ kerangka sebuah object. HTML saat ini merupakan standar Internet yang didefinisikan dan dikendalikan penggunaannya oleh World Wide Web Consortium (W3C). HTML dibuat oleh kolaborasi Caillau TIM dengan Berners-lee Robert ketika mereka bekerja di CERN pada tahun 1989 (CERN adalah lembaga penelitian fisika energi tinggi di Jenewa)

CSS : Cascading Style Sheet merupakan aturan untuk mengendalikan sejumlah komponen pada sebuah website sehingga menjadi lebih teratur dan seragam. Css bukanlah merupakan bahasa pemrograman. Pada umumnya CSS dipakai untuk memformat tampilan halaman web yang dibuat dengan bahasa HTML dan XHTML.
CSS dapat mengendalikan ukuran gambar, warna bagian tubuh pada teks, warna tabel, ukuran border, warna border, warna hyperlink, warna mouse over, spasi antar paragraf, spasi antar teks, margin kiri, kanan, atas, bawah, dan parameter lainnya. CSS adalah bahasa style sheet yang digunakan untuk mengatur tampilan dokumen. Dengan adanya CSS memungkinkan kita untuk menampilkan halaman yang sama dengan format yang berbeda.

JavaScript : Adalah bahasa pemrograman berbasis prototipe yang berjalan disisi klien. Jika kita berbicara dalam konteks web, sederhananya, kita dapat memahami JavaScript sebagai bahasa pemrograman yang berjalan khusus untuk di browser atau halaman web agar halaman web menjadi lebih hidup. Kalau dilihat dari suku katanya terdiri dari dua suku kata, yaitu Java dan Script. Java adalah Bahasa pemrograman berorientasi objek, sedangkan Script adalah serangkaian instruksi program.
Secara fungsional, JavaScript digunakan untuk menyediakan akses script pada objek yang dibenamkan ( embedded ). Contoh sederhana dari penggunaan JavaScript adalah membuka halaman pop up, fungsi validasi pada form sebelum data dikirimkan ke server, merubah image kursor ketika melewati objek tertentu, dan lain lain.

jQuery : adalah pustaka JavaScript kecil bersumber terbuka yang menekankan pada interaksi antara JavaScript dan HTML. Pustaka ini dirilis pada Januari 2006 di BarCamp NYC oleh John Resig dan berlisensi ganda di bawah MIT dan GPL.
jQuery merupakan sebuah library Javascript yang sangat ringkas dan sederhana untuk memanipulasi komponen di dokumen HTML, menangani event, animasi, efek dan memproses interaksi ajax. jQuery dirancang sedemikian rupa supaya membuat program menggunakan Javascript menjadi relatif sangat mudah. Sesuai slogan nya, write less, do more. Menulis kode lebih sedikit, tetapi melakukan pekerjaan lebih banyak.
jQuery ukurannya cukup kecil, sehingga tidak memperlambat proses loading blog yang kita buat. jQuery juga kompatibel dengan CSS3 dan yang tak kalah penting adalah jQuery bisa berjalan di semua browser – cross browser.
Tanpa library seperti jQuery, menerapkan Javascript mungkin akan lebih sulit, terutama untuk pemula yang baru belajar Javascript. Plugin tambahan seperti JQuery UI (User Interface) semakin memudahkan kita mengembangkan blog yang cantik dan interaktif. Selain itu tersedia plugin-plugin lain yang semakin memperkaya kemampuan jQuery.
Read More

Mengenal Javascript, jQuery, Ajax, AngularJS dan Node.js

Mengenal Javascript, jQuery, Ajax, AngularJS dan Node.js



Apakah pengertian dan perbedaan JavascriptAJAXjQueryAngularJS, dan Node.js?
Tulisan ini menguraikan secara singkat dan memberikan beberapa contoh penggunaannya bagi Anda yang kurang mengerti definisi dan fungsi masing-masing script tersebut.
JAVASCRIPT
JavaScript adalah sebuah bahasa pemrograman yang dirancang untuk penggunaan pada browser (peramban) web. JavaScript bukan scripting language, juga sama sekali tidak berhubungan dengan platform software Java milik Oracle, jadi memang namanya agak menyesatkan.
Kita bisa menulis kode dalam JavaScript sebagai bahasa full fitur yang – dengan satu pengecualian – mampu berjalan dalam sebuah browser web seperti Chrome, Firefox, atau Internet Explorer. Secara umum ia dipergunakan untuk memanipulasi “Document Object Model” (DOM), yang meliputi elemen-elemen pada sebuah laman web.
JavaScript dieksekusi pada client side (komputer pengguna): Sebuah server website mengirim javascript ke peramban milik pengguna, dan browser tersebut menginterpretasikan dan menjalankan kodenya. Semua ini terjadi dalam sebuah sandbox, yang menjaga agar javascript tidak menyentuh internal sistem, sehingga mencegah malicious code (kode jahat) menginfeksi komputer pengguna.
Contoh program JavaScript paling simpel adalah alert("hello world!");, yang kemungkinan diletakkan pada sebuah laman HTML di dalam tag <script>untuk memerintahkan browser menginterpretasikannya sebagai JavaScript, misalnya: <script> alert("hello world!"); </script> Kode ini menampilkan sebuah munculan (pop up) kotak alert pada peramban web.
Jadi, kesimpulannya: JavaScript adalah sebuah bahasa pemrograman yang beroperasi pada peramban web, di dalam sebuah security sandbox, yang memampukan manipulasi elemen-elemen pada sebuah laman web.

AJAX

AJAX, singkatan dari “Asynchronous JavaScript and XML“, merupakan metode suatu laman web menggunakan JavaScript untuk mengirim dan menerima data dari server tanpa harus menyegarkan (refresh) laman itu. XML adalah sejenis markup language – seperti HTML, yang kerap dipakai untuk mengirimkan data melalui internet. Belakangan ini, JSON (“JavaScript Object Notation”) lebih populer dan bisa dibaca – secara bawaan (native) – oleh JavaScript.
Berikut uraian yang lebih ringkas:
AJAXAsynchronous JavaScript and XML. Sebuah sistem untuk mengirim dan menerima data dari server tanpa penyegaran laman (page refresh). (contoh di bawah)
XMLeXtensible Markup Language. Sebuah bahasa untuk mengorganisir data arbitrer. Menggunakan banyak sekali kurung sudut (angle brackets): “<>”. (contoh)
HTMLHyperText Markup Language. Sebuah subset XML yang khususnya berfungsi untuk menjelaskan dan mengorganisir laman web. (contoh)
JSONJavaScript Object Notation. Metode yang lebih modern untuk memindahkan paket data yang sering dipakai bersama dengan AJAX. Bisa dibaca secara bawaan oleh JavaScript. (contoh)

Sebuah contoh perintah AJAX bisa berjalan seperti berikut:
  • Client memanggil laman dari server
  • Server merespon panggilan dan mengirimkan laman
  • Client membuat perintah AJAX ke server dan memanggil lebih banyak data
  • Server mengirimkan data tersebut
  • Client memutakhirkan laman dengan data tersebut tanpa me-refresh laman.
Facebook, Gmail, dan Pinterest adalah contoh situs-situs yang banyak menggunakan AJAX.
Bagian “Asynchronous” merujuk pada fakta bahwa ketika JavaScript menyampaikan panggilan AJAX ke webserver, ia terus berjalan sampai memperoleh respon – ia tidak memblokir dan berhenti saat data sedang diproses oleh server.

JQUERY

jQuery adalah sebuah library yang dibangun dengan menggunakan JavaScript untuk mengautomasi dan menyederhanakan perintah-perintah umum. Meskipun ada banyak library lain semacamnya, namun jQuery jauh lebih populer karena kemampuannya untuk menjalankan perintah pada peramban lama. jQuery berjalan pada browser bersamaan dengan JavaScript biasa. Ia terutama dipergunakan untuk animasi dan AJAX, yang cukup sulit untuk diprogramkan dengan vanilla JavaScript, namun bisa diketik dalam beberapa baris singkat dengan jQuery.
jQuery dimasukkan dalam sebuah laman web dengan tag <script> tag; contohnya: <script src="./path/to/jquery.js"></script>. jQuery juga memiliki banyak sekali plugin yang memperluas fungsionalitasnya melalui berbagai metode.
Contoh panggilan jQuery, yang akan menyembunyikan kotak kecil ketika diklik:<script src="path/to/jquery.js">
<script>
$("#box").click(function(){$("#box").slideUp()});
</script>

ANGULARJS

AngularJS adalah sebuah framework MVC full frontend untuk aplikasi web JavaScript. Ia dibangun di Google dan menyediakan sebuah metode cepat untuk membangun aplikasi web laman tunggal. Seperti jQuery, ia dimasukkan dala sebuah laman webd engan menggunakan tag <script>, dan ditulis dalam JavaScript. Namun, berbeda dengan jQuery, ia dimaksudkan sebagai sebuah framework untuk membangun sebuah aplikasi web utuh. Selain itu, AngularJS juga mengandung sebuah versi minimal jQuery secara default.
Jika Anda ingin mempelajari AngularJS, silakan cermati tutorial video dari EggHead. Anda harus punya pemahaman yang cukup mengenai JavaScript, sebab menulis dalam Angular membutuhkan pemahaman mendalam mengenai prototypingscope, dan berbagai aspek JavaScript lainnya.
Website AngularJS menyajikan sebuah laman berisi contoh-contoh proyek yang dibangun dengan AngularJS, jika Anda ingin melihatnya.

NODE.JS

Anda tentu ingat bahwa JavaScript berjalan pada browser dengan satu pengecualian? Nah, pengecualian tersebut ialah Node.js. Ia adalah sebuah tool command-line untuk menjalankan JavaScript pada sebuah mesin tanpa harus menjalankannya pada peramban. Hal ini dimampukan dengan adanya suatu versi Chrome’s V8 Engine, yakni engine JavaScript yang berjalan dalam Google Chrome.
Sebelum adanya Node.js, para developer harus menggunakan berbagai bahasa pemrograman yang berbeda untuk backend dan frontend aplikasi web mereka. Misalnya PHP, Java, ASP.Net yang berjalan di sisi server, dan JavaScript di sisi browser. Sekarang dengan Node.js, para pengembang dapat mempergunakan JavaScript pada server sekaligus klien, artinya, para developer cukup fokus mempelajari satu bahasa pemrograman saja. Soal apakah metode ini lebih baik daripada sebelumnya masih diperdebatkan.

KESIMPULAN

JavaScript adalah sebuah bahasa yang dipergunakan oleh website pada sisi peramban pengguna.
AJAX adalah metode JavaScript memanggil data dari peramban tanpa menyegarkan (refresh) laman atau memblokir aplikasi.
jQuery adalah library JavaScript yang dibangun untuk otomatisasi dan menyederhanakan perintah-perintah umum sepert AJAX atau animasi.
Angular adalah framework JavaScript yang berfungsi untuk membangun aplikasi web laman tunggal (single-page web applications).
Node.js memampukan JavaScript dijalankan tanpa peramban, dan umumnya dipergunakan untuk menjalankan server web.
Read More

Senin, 24 Oktober 2016

Perbedaan http denga https

HTTP dan HTTPS adalah kode bahasa protokol  yang tidak asing lagi bagi pengguna internet, karena di setiap link yang mengacu pada sebuah website pasti menggukannya. Kode ini juga sering di jumpai ketika kita hendak melakukan browsing atau membuka halaman website tertentu. Kita di minta untuk mengetik kode tersebut di awalnya dan diakhiri dengan titik dua dan garis miring kembar ketika kita melakukan browsing halaman website yang diinginkan.
HTTP ( Hypertext Transfer Protocol)
Hypertext Transfer Protokol (HTTP) adalah sebuah protokol jaringan lapisan aplikasi yang digunakan untuk sistem informasi terdistribusi, kolaboratif, dan menggunakan hipermedia penggunaannya banyak pada pengambilan sumber daya yang saling terhubung dengan tautan yang disebut dengan dokumen hiperteks yang kemudian membentuk World Wide Web pada tahun 1990 oleh fisikawan inggris yang bernama Tim Berners Lee. Http merupakan protokol yang menyediakan perintah dalam komunikasi antar jaringan, yaitu komunikasi antara jaringan komputer client dengan web server. Dalam komunikasi ini, komputer clientmelakukan permintaan dengan mengetikkan alamat atau website yang ingin di akses. Sedangkan server mengolah permintaan tersebut berdasarkan kode protokol yang di inputkan.
HTTP disebut protokol Stateless karena setiap perintah dijalankan secara independen, tanpa pengetahuan tentang perintah yang datang sebelumnya. Ini adalah alasan utama yang sulit untuk menerapkan situs Website yang bereaksi secara cerdas untuk input pengguna.
Sesi http
Sebuah sesi HTTP adalah urutan transaksi permintaan dan respons jaringan dengan menggunakan protokol HTTP. Sebuah klien HTTP akan memulai sebuah permintaan. Klien tersebut akan membuka sebuah koneksiTransmission Control Protocol (TCP) ke sebuah port tertentu yang terdapat dalam sebuah host (umumnya port 80 atau 8080). Server yang mendengarkan pada port 80 tersebut akan menunggu pesan permintaan klien. Saat menerima permintaan, server akan mengirimkan kembali baris status, seperti “HTTP/1.1 200 OK”, dan pesan yang hendak diminta, pesan kesalahan atau informasi lainnya.
Hypertext Transfer Protocol Secure (HTTPS)
Hypertext Transfer Protocol Secure (HTTPS) memiliki pengertian yang sama dengan HTTP hanya saja HTTPS memiliki kelebihan fungsi di bidang keamanan (secure). HTTPS di temukan oleh Netscape Communication Corporation. HTTPS menggunakan Secure Socket Layer (SSL) atau Transport Layer Security(TLS) sebagai sublayer dibawah HTTP aplikasi layer yang biasa. HTTP di enkripsi dan deskripsi dari halaman yang di minta oleh pengguna dan halaman yang di kembalikan oleh web server. Kedua protokol tersebut memberikan perlindungan yang memadai dari serangan eavesdroppers, dan man in the middle attacks. Pada umumnya port yang digunakan HTTPS adalah port 443. Tingkat keamanan tergantung pada ketepatan dalam mengimplementasikan pada browser web dan perangkat lunak server dan didukung oleh algorithma penyandian yang aktual. Oleh karena itu, pada halaman web digunakan HTTPS, dan URL yang digunakan dimulai dengan ‘https://’.
Https dapat menjamin keamanan dalam Autentikasi server yaitumemungkinkan peramban dan pengguna memiliki kepercayaan bahwa mereka sedang berbicara kepada server aplikasi sesungguhnya.Https juga mampu dalam menjaga kerahasiaan data dan Integritas data.
Perbedaan utama http dan https
Beberapa perbedaan utama antara http dan https, dimulai dengan port default, yang 80 untuk http dan 443 untuk https. Https bekerja dengan transmisi interaksi yang normal http melalui sistem terenkripsi, sehingga dalam teori, informasi tidak dapat diakses oleh pihak selain klien dan server akhir. Ada dua jenis umum lapisan enkripsi: Transport Layer Security (TLS) dan Secure Socket Layer (SSL), yang keduanya menyandikan catatan data yang dipertukarkan.
Cara Kerja
Https bukan protokol yang terpisah, tetapi mengacu pada kombinasi dari interaksi HTTP normal melalui Socket Layer terenkripsi SSL (Secure) atau Transport Layer Security (TLS) mekanisme transportasi. Hal ini menjamin perlindungan yang wajar dari penyadap dan (asalkan dilaksanakan dengan benar dan otoritas sertifikasi tingkat atas melakukan pekerjaan mereka dengan baik) serangan.
Port default TCP https: URL adalah 443 (untuk HTTP tanpa jaminan, defaultnya adalah 80). Untuk mempersiapkan web-server untuk koneksi https penerima harus sebagai administrator dan membuat sertifikat kunci publik untuk server web. Sertifikat ini dapat dibuat untuk server berbasis Linux dengan alat seperti Open SSL yang ssl atau gensslcert SuSE. Sertifikat ini harus ditandatangani oleh otoritas sertifikat satu bentuk atau lain, yang menyatakan bahwa pemegang sertifikat adalah siapa yang mereka ajukan. Web browser pada umumnya didistribusikan dengan penandatanganan sertifikat otoritas sertifikat utama, sehingga mereka dapat memverifikasi sertifikat yang ditandatangani oleh mereka.
Bila menggunakan koneksi https, server merespon koneksi awal dengan menawarkan daftar metode enkripsi mendukung. Sebagai tanggapan, klien memilih metode sambungan, dan klien dan sertifikat server pertukaran untuk otentikasi identitas mereka. Setelah ini dilakukan, kedua belah pihak bertukar informasi terenkripsi setelah memastikan bahwa kedua menggunakan tombol yang sama, dan koneksi ditutup. Untuk host koneksi https, server harus memiliki sertifikat kunci publik, yang embeds informasi kunci dengan verifikasi identitas pemilik kunci itu. Sertifikat Kebanyakan diverifikasi oleh pihak ketiga sehingga klien yakin bahwa kuncinya adalah aman.
Keuntungan  mengubah HTTP menjadi HTTPS?
Untuk mengamankan komunikasi antara browser dengan web server. Bagaimana bisa? Ilustrasi singkat berikut akan menjawabnya: Ketika anda mengakses sebuah web server yang menggunakan protokol HTTPS, halaman yang dikirimkan pada anda telah dienkripsi dulu oleh protokol ini. Dan semua informasi yang anda kirimkan ke server (registrasi, identitas, nomor pin, transfer pembayaran) akan dienkripsi juga sehingga tidak ada yg bisa mencuri dengar (eavesdropping) data-data anda  ketika proses transaksi sedang berlangsung. Maka transaksi data anda menjadi lebih safe. Protokol HTTPS bisa anda temukan pada situs-situs perbankan, ecommerce, form registrasi, dsb. Karena di area bisnis inilah rentan sekali terjadi eavesdropping oleh pihak ketiga. Untuk itulah anda membutuhkan sertifikat SSL.
Beberapa variasi kemungkinan halaman dan form URL yang perlu diperhatikan adalah:
  • Halaman form di http://internetbanking.com/formlogin.html dan tag form login dalam bentuk <form action=http://internetbanking.com/dologin.php>. Ini benar-benar tidak aman karena tidak ada enkripsi sama sekali.
  • Halaman di http://internetbanking.com/formlogin.html , tag form login dalam bentuk <form action=https://internetbanking.com/dologin.php . Ini pun tetap tidak aman karena formlogin bisa diubah dengan mitm attack.
  • Halaman di https://internetbanking.com/formlogin.html , tag form login dalam bentuk <form action=http://internetbanking.com/dologin.php>. Form login tidak bisa diserang, namun password dikirimkan tanpa terenkripsi. Sama saja bohong.
  • Halaman di https://internetbanking.com/formlogin.html, tag form login dalam bentuk <form action=https://internetbanking.com/dologin.php>. Ini baru aman, form login tidak bisa diserang, dan password terenkrip.
Page Url     Form Url     Status
HTTP        HTTP        Not secure, nothing encrypted.
HTTP        HTTPS     Not secure, vulnerable to mitm attack.
HTTPS     HTTP        Not secure, form data not encrypted.
HTTPS     HTTPS     Maximum Security
Kesimpulan
Http dan https memiliki peranan yang sama dalam  mendefinisikan bagaimana suatu pesan bisa diformat dan dikirimkan dari server ke client, hanya saja https memiliki kelebihan fungsi dalam sistem keamanan dengan mengenkripsikan informasi menggunakan SSL dan TLS. Sehingga https memiliki keamanan yang lebih di bandingkan http.
Read More

Pengertian, Fungsi dan Manfaat https

Pengertian, Fungsi dan Manfaat httpsHTTP(Hypertext Transfer Protokol) sangat identik dengan HTTPS, akan tetapi mempunyai perbedaan yang signifikan.
Pengertian HTTPS(Hypertext Transfer Protokol Secure).
HTTPS merupakan kata yang berasal dari bahasa inggris dan asal katanya terdiri dari Hypertext Transfer Protokol Secure dan di singkat menjadi HTTPS. HTTPS dapat diartikan sebagai bentuk protokol valid dan aman. Hal ini di sebabkan perintah dan data melalui protokol HTTPS ini telah di lindungi dengan sistem encryp melalui berbagai format, sehingga ini akan menyulitkan bagi orang-orang yang ingin membajak isi dari dokumen yang dikirim dengan menggunakan media HTTPS.
Dapat dipahami juga bahwa HTTPS meruppakan gabungan dari HTTP dengan SSL(Secure Socket Layer) / TLS(Transport Layer Security) protokol. Seluruh komunikasi yang dilakukan melalui HTTPS akan dienkripsi dan di analisa dengan tujuan untuk keamanan ketika terjadi transaksi data melaui internet.
Fungsi dan Tujuan HTTPS(Hypertext Transfer Protokol Secure). 
Fungsi khusus HTTPS adalah untuk menjaga kemanan data dari hacker yang berniat membajak sebuah dokumen secara ilegal. Sedangkan tujuan HTTPS adalah untuk mengantisipasi terjadinya eror program sebuah data dan kerusakan server akibat kegagalan koneksi yang disebabkan perusahaan yang di buat oleh pakar hacker yang tidak bertanggung jawab.
Manfaat dan kegunaan HTTPS(Hypertext Transfer Protokol Secure).
Cara kerja hacker untuk membajak sebuah file dokumen biasa nya menggunakan tool wireshak, ketika tool ini terkoneksi ke internet maka protokol HTTP akan mudah untuk di jebol pertahanan keamanan nya. Berbeda dengan sistem HTTPS, tool yang digunakan tidak akan mampu menembus keamanan dari sebuah dokumen dengan menggunakan protokol HTTPS.
Contoh Perusahaan Internet Yang menggunakan  HTTPS (Hypertext Transfer Protokol Secure).
Anda bisa lihat perusahaan yang bergerak di bidang internet kebanyakan dari mereka membuat sebuah protokol dengan sistem keamanan yang cukup canggih, salah satunya dengan menggunakan HTTPS.  Perusahaan-perusahaan itu adalah https://facebook.com, https://twitter.com, https://google.com, dan masih banyak lagi.
Read More

Kamis, 20 Oktober 2016

Fungsi dan penggunaan .htaccess part 2

Lanjutan dari artikel sebelumnya tentang Fungsi dan penggunaan .htaccess



  • Redirect Visitors to a New Page or Directory
    1. Fungsi ini sangat berguna ketika kita membuat ulang seluruh website kita, me-rename halaman dan direktori, sehingga pengunjung akan menemuai halaman lama dalam keadaan error 404 File Not Found. Untuk mengatasi masalah tersebut, dapat dilakukan dengan cara melakukan redirect dari halaman lama ke halaman yang baru. Misalnya apabila halaman lama kita adalah halamanlama.html dan halaman baru adalah halamanbaru.html, maka perintahnya adalah:
      12Redirect permanent /halamanlama.html http://www.namadomainkamu.com/halamanbaru.html
      Jika kita me-rename (mengganti nama) direktori, maka perintahnya adalah:
      12Redirect permanent /direktorilama http://www.namadomainkamu.com/direktoribaru
      Untuk diperhatikan, bahwa nama direktori yang lama ditulis dengan relative path dan yang baru ditulis dengan absolute path.
      Selain itu kita juga dapat melakukan redirek halaman ketika kita akan melakukan perbaikan pada website atau blog kita, dan agar pengunjung langsung menuju ke halaman yang telah kita tentukan maka kita perlu menambahkan kode berikut ini:
      12
      3
      4
      5
      6
      7
      order deny,allowdeny from all
      allow from 222.222.222.222
      ErrorDocument 403 /download.html
      <Files download.html>
      allow from all
      </Files>
      Ketika pengunjung lain yang datang akan langsung melihat halaman download.htmlsedangkan alamat IP 222.222.222.222 (misalnya alamat IP punya kita) dapat mengakses website dengan normal (bukan halaman download.html).
      1. Prevent Hot Linking and Bandwidth Leeching
      Untuk mencegah orang lain me-link secara langsung ke direktori image kita dari website orang lain, seperti misalnya ketika ada orang mengambil gambar dari website kita, tetapi tetap menggunakan link di server host kita, maka akan merugikan kita karena dapat mengurangi bandwidth di hosting kita. Untuk mengatasi hal ini, kita dapat menambahkan kode berikut:
      12
      3
      4
      5
      RewriteEngine onRewriteCond %{HTTP_REFERER} !^$
      RewriteCond %{HTTP_REFERER}
      !^http://(www\.)?namadomainmu.com/.*$ [NC]
      RewriteRule \.(gif|jpg)$ – [F]
      Perintah di atas akan membuat direktori image hanya bisa diakses apaila user sedang mengakses www.namadomainmu.com. Namun, apabila kita masih merasa jengkel, kita juga dapat membuat sebuah image alternatif bila direktori image di-link oleh orang lain. Misalnya kita membuat image alternatif dengan nama noimage.gif yang bertuliskan: “Gambar dari web lain… kunjungi http://namadomainmu.com untuk melihat gambar sebenarnya.” Untuk itu kita dapat menambahkan kode berikut :
      12
      3
      4
      5
      6
      RewriteEngine onRewriteCond %{HTTP_REFERER} !^$
      RewriteCond %{HTTP_REFERER}
      !^http://(www\.)?namadomainmu.com/.*$ [NC]
      RewriteRule \.(gif|jpg)$ http://www.namadomainmu.com
      /noimage.gif [R,L]
      1. Prevent Viewing of .htaccess or other files
      Untuk mencegah user mengakses file .htaccess, maka dapat diketikkan perintah sbb:
      12order allow, denydeny from all
      1. Pengaturan Permalink
      Agar kita dapat melakukan pengaturan pada permalink kita agar lebih SEO friendly kita dapat menambahkan kode berikut ini:
      12
      3
      4
      5
      RewriteEngine OnRewriteBase /
      RewriteCond %{REQUEST_FILENAME} !-f
      RewriteCond %{REQUEST_FILENAME} !-d
      RewriteRule . /index.php [L]
      Untuk pengaturan lain seperti hot linking protection yang sangat berguna untuk mencegah pencurian bandwidth, pengaturan password, dll Anda dapat mengunjungi .htaccess file generator online. Selain itu dapat juga kita lakukan melalui cpanel.
      Dari beberapa kegunaan dari file .htaccess di atas, kita dapat mengembangkannya lebih jauh lagi sesuai dengan kebutuhan.
      Read More

      Fungsi dan penggunaan .htaccess part 1

      Fungis dan penggunaan .htaccess

      Sebagai seorang web programmer, seringkali kita menemukan sebuah file bernama .htaccess dalam server yang kita pakai. File tersebut tentu saja asing bagi pemula yang baru belajar coding, karena ekstensi file yang sering digunakan adalah .html, .php, .aspx, .js, .css, dan lain-lain. Lalu apakah itu file .htaccess?
      File .htaccess adalah file konfigurasi yang disediakan oleh web server Apacehe yang bertujuan untuk mengubah settingan default Apache server itu sendiri. Sebagai pengelola web/webmaster, sudah seharusnya kita dapat memanfaatkan fitur ini agar bisa mengubah settingan default server tersebut. Banyak manfaat, terutama dari sisi keamanan, yang dapat dilakukan dengan memodifikasi isi file .htaccess tersebut.
      Pada dasarnya file .htaccess ini merupakan file teks berformat ASCII sederhana yang biasanya diletakkan dalam root direktori. Harus ditampilkan dalam format ASCII dan bukan binary, serta file permission (atribut file) pada server hosting harus di set sebagai 644 (rw-r-r). Hal ini dimaksudkan supaya server dapat mengakses file .htaccess, tatapi mencegah user untuk mengakses file .htaccess dari browser mereka. Untuk diketahui, bahwa file .htaccess ini dapat digunakan untuk melakukan konfigurasi subdirektori-subdirektori yang ada di dalamnya, sehingga kita hanya cukup mempunyai satu file .htaccess saja yang diletakkan pada root direktori.
      Kode perintah dalam file .htaccess harus ditempatkan dalam satu baris. Untuk itu, jika kita membuat file .htaccess menggunakan teks editor (seperti Notepad), maka kita harus men-disable fungsi word wrap (memotong baris) terlebih dahulu.
      Beberapa contoh penggunaan File .htaccess :
      1. Customize Error Message
      Dengan fungsi ini kita dapat mengubah halaman error pada server, yaitu dengan mendefinisikan sesuai dengan keinginan kita sendiri.
      1. Override SSI Settings
      Default nya, hanya halaman web yang berekstensu .shtml yang daoat menjalankan server-side termasuk SSI di server. Dengan menggunakan .htaccess kita dapat mengubah setting default tersebut agar SSI dapat bekerja dengan format HTML. Untuk mengubah settingan tersebut, kita dapat menambahkan kode berikut pada file .htaccess.
      12AddType text/html .htmlAddHandler server-parsed .html
      Apabila kita menginginkan halaman yang berekstensi .html dan .htm untuk dapat menjalankan file .htaccess, maka dapat ditambahkan kode berikut :
      12
      3
      AddType text/html .htmlAddHandler server-parsed .html
      AddHandler server-parsed .htm
      1. Change Default Homepage
      Fungsi ini digunakan untuk mengubah nama default halaman depan web. Sebagai contohnya yaitu ketika user hanya diijinkan untuk bisa mengakses melalui nama domain saja(http://www.namawebkamu.com) tanpa harus menulis nama file secara jelas (http://www.namawebkamu.com/index.html). Untuk itu, kita juga harus mempunyai file index tersebut di root direktori. Nama file yang dapat diterima antara lain yaitu index.htmlindex.htmindex.cgiindex.php, dll. Pastikan saja bahwa file tersebut bernama index.*.
      Dalam pemberian nama tersebut ada tingkatan yang harus dipatuhi. Apabila kita mempunyai index.cgi dan index.html di root direktori, maka server akan menampilkanindex.cgi karena .cgi memiliki tingkatan yang lebih tinggi daripada .html.
      Dengan .htaccess, web programmer dapat mendefinisikan file index tambahan atau bisa juga mengubah urutan tingkatannya. Misalnya untuk mendefinisikan depan.htmlsebagai halaman index, kita dapat menambahkan kode berikut pada file .htaccess :
      1DirectoryIndex depan.html
      Kode tersebut akan memerintahkan server untuk mencari file bernama depan.html. Jika server menemukan file tersebut, maka server akan menampilkan halaman yang dimaksud. Namun, apabila tidak, maka akan menampilkan error 404 Missing Page.
      Untuk mengubah urutan tingkatan, kita dapat memasukkan perintah DirectoryIndex dengan nama-nama file dalam satu baris. Urutan penulisan file tersebut menentukan urutan tingkatan akses file yang dimaksud (yang pertama ditulis akan diakses terlebih dahulu), misalnya :
      1DirectoryIndex depan.htmlindex.cgiindex.phpindex.html
      1. Enable Directory Browsing
      Untuk alasan keamanan, server Apache biasanya telah menghilangkan default setting yang memungkinkan directory indexing. Opsi inilah yang memungkinkan isi direktori untuk ditampilkan ke dalam browser jika direktori tersebut tidak mempunyai halaman index.
      Misalnya apabila kita memasukkan sebuah URL yang tidak mempunyai halaman index, seperti http://www.namadomainmu.com/images/, maka browser akan menampilkan daftar images di dalam direktori tersebut.
      Jadi, apabila kita memiliki banyak file pada direktori tertentu, maka untuk mencegah pengunjung melihat keseluruhan dari isi direktori tadi maka kita perlu menambahkan file index.php pada setiap direktori akan tetapi hal ini tidak mungkin dilakukan dan sebagai gantinya kita hanya perlu menambahkan kode berikut ini:
      1Options All -Indexes
      Sehingga setiap pengunjung yang mengetikkan url seperti ini, misalnya: http://namadomainmu.com/images maka akan timbul pesan error “404″ atau langsung meredirek pada halaman lain sesuai dengan pengaturan yang kita lakukan.
      1. Block Users form Accessing Your Website (Memblokir alamat IP tertentu)
      File .htaccess dapat digunakan untuk memblokir alamat IP tertentu ketika mengakses ke alamat kita. Kita dapat memblok akses untuk beberapa user sekaligus, baik melalui alamat IP maupun domain name.
      Contoh kode yang dapat digunakan yaitu sbb:
      12
      3
      4
      5
      order deny,allowdeny from 111.234.222.111
      deny from 234.321.22.
      deny from .avrakadavra.com
      allow from all
      Contoh di atas berarti bahwa :
      • alamat IP 111.234.222.111 akan diblok
      • semua user dengan alamat IP antara 234.321.22. hingga 234.321.22.999 akan diblok
      • semua user yang berasal dari .avrakadavra.com akan diblok.
      Apabila alamat-alamat yang tidak diijinkan untuk mengakses web kita berusaha mengakses web kita, maka akan tampil secara otomatis error 403 Forbidden (“You do not have permission to access this site”).
      Read More