- SEJARAH WORLD WIDE WEB ( WWW )
Pada tahun 1980, Tim Bernes-Lee , kontraktor independen
di Organisasi Eropa untuk Riset Nuklir (CERN), Swiss ,
dibangun Enquire , sebagai database pribadi orang dan model perangkat
lunak, tetapi juga sebagai cara untuk bermain dengan hypertext
; setiap halaman baru informasi dalam Enquire harus terhubung dengan halaman yang ada.
Pada
tahun 1984 Berners-Lee kembali ke CERN, dan dianggap permasalahannya
presentasi informasi: fisikawan dari seluruh dunia diperlukan untuk
berbagi data, dan tanpa mesin umum dan tidak ada perangkat lunak
presentasi umum. Dia menulis sebuah proposal Maret 1989 untuk "database hypertext besar dengan link diketik", tapi itu dihasilkan bunga kecil. Bosnya,
Mike Sendall, mendorong Berners-Lee untuk mulai menerapkan sistemnya
pada suatu yang baru diperoleh NeXT workstation. Ia menilai beberapa
nama, termasuk Mesh Informasi, Tambang Informasi (ditolak karena abbreviates ke TIM, pencipta nama WWW) atau Tambang Informasi (ditolak karena abbreviates untuk MOI yang "Me" dalam bahasa Perancis), tetapi menetap di World Wide Web.
- PENGEMBANGAN WEBSITE
Untuk organisasi yang lebih besar dan bisnis, tim pengembangan web dapat terdiri dari ratusan orang ( web developer ). Organisasi yang lebih kecil mungkin hanya memerlukan permanen atau kontrak tunggal webmaster , atau tugas sekunder untuk posisi pekerjaan yang terkait seperti desainer grafis dan / atau sistem informasi teknisi. Pengembangan Web mungkin merupakan upaya kolaborasi antar departemen bukan domain dari sebuah departemen yang ditunjuk.
- PENGEMBANGAN WEB SEBAGAI SEBUAH INDUSTRI
Perusahaan
pengembangan situs Web yang lebih kecil sekarang mampu membuat desain
web diakses baik perusahaan kecil dan individu lebih mendorong
pertumbuhan industri pengembangan web. Sejauh alat
pengembangan web dan platform prihatin, ada sistem yang tersedia untuk
muatan umum gratis untuk membantu dalam pembangunan. Contoh yang populer adalah LAMP ( Linux , Apache , MySQL , PHP ) stack, yang biasanya dibagikan secara gratis. Fakta
ini saja telah diwujudkan ke banyak orang di seluruh dunia membuat
situs Web baru setiap hari dan sehingga memberikan kontribusi untuk
meningkatkan popularitas pengembangan Web. Faktor lain
telah bangkitnya mudah untuk menggunakan WYSIWYG web pengembangan
perangkat lunak, yang paling menonjol Adobe Dreamweaver , Netbeans ,
Webdev , atau Microsoft Expression Studio , Adobe Flex . Menggunakan perangkat lunak tersebut, hampir setiap orang dapat mengembangkan halaman Web dalam hitungan menit. Pengetahuan
tentang HyperText Markup Language ( HTML), atau bahasa pemrograman lain
tidak diperlukan, tetapi disarankan untuk hasil yang profesional.
Generasi berikutnya dari alat pengembangan web menggunakan pertumbuhan yang kuat di LAMP, Java Platform , Enterprise Edition dan teknologi Microsoft NET. teknologi untuk menyediakan Web sebagai cara untuk menjalankan aplikasi online. Pengembang
Web sekarang membantu untuk memberikan aplikasi sebagai layanan Web
yang secara tradisional hanya tersedia sebagai aplikasi pada komputer
yang berbasis meja.
Alih-alih menjalankan eksekusi kode pada komputer lokal, pengguna berinteraksi dengan aplikasi online untuk membuat konten baru. Hal
ini telah menciptakan metode baru dalam komunikasi dan memungkinkan
banyak kesempatan untuk desentralisasi informasi dan distribusi media.Pengguna
sekarang dapat berinteraksi dengan aplikasi dari berbagai lokasi,
bukannya terikat pada workstation khusus untuk lingkungan aplikasi
mereka.
Contoh transformasi dramatis dalam komunikasi dan perdagangan yang dipimpin oleh pengembangan web termasuk e-commerce. Situs lelang online seperti eBay telah mengubah cara konsumen mengkonsumsi dan membeli barang dan jasa. Reseller
online seperti Amazon.com dan Buy.com (di antara banyak, banyak orang
lain) telah mengubah pengalaman belanja dan tawar-menawar berburu bagi
banyak konsumen.Contoh lain baik komunikasi transformatif yang dipimpin oleh pengembangan web adalah blog . Web
aplikasi seperti Wordpress dan Movable Type telah membuat blog dengan
mudah diimplementasikan lingkungan untuk situs Web individu. Open
source Sistem Manajemen Konten seperti Joomla! , Drupal , Xoops ,
dan TYPO3 dan perusahaan manajemen konten sistem seperti Alfresco telah
memperluas pengembangan web menjadi mode baru interaksi dan komunikasi.
Selain itu, pengembangan web telah pindah ke fase baru komunikasi internet. Komputer situs web tidak lagi hanya alat untuk bekerja atau commerce tetapi paling digunakan untuk komunikasi. Website seperti Facebook dan Twitter menyediakan pengguna platform untuk bebas berkomunikasi. Ini bentuk baru komunikasi web juga mengubah e-commerce melalui jumlah hit dan iklan online.
- PERTIMBANGAN KEAMANAN
Pengembangan Web memperhitungkan pertimbangan keamanan, seperti
kesalahan entri data pengecekan melalui bentuk-bentuk, output filtering,
dan enkripsi. Praktek berbahaya seperti injeksi
SQL dapat dilakukan oleh pengguna dengan niat buruk namun dengan
pengetahuan hanya primitif pengembangan web sebagai keseluruhan. Script
dapat dimanfaatkan untuk memberikan akses tidak sah ke pengguna yang
jahat mencoba untuk mengumpulkan informasi seperti alamat email,
password dan konten yang dilindungi seperti nomor kartu kredit.
Beberapa
ini tergantung pada lingkungan server (paling
sering Apache atau Microsoft IIS ) yang bahasa scripting,
seperti PHP , Ruby , Phyton ,Perl atau ASP berjalan, dan karena itu
belum tentu sampai ke pengembang web sendiri untuk mempertahankan . Namun, pengujian ketat aplikasi web sebelum rilis publik didorong untuk mencegah eksploitasi tersebut terjadi.
Menjaga web server aman dari gangguan ini sering disebut Server Port Pengerasan. Banyak teknologi ikut bermain menjaga informasi di internet yang aman ketika ditransmisikan dari satu lokasi ke lokasi lain. Misalnya Secure
Socket Layer Enkripsi ( SSL ) Sertifikat dikeluarkan oleh otoritas
sertifikat untuk membantu mencegah penipuan internet . Banyak pengembang sering menggunakan berbagai bentuk enkripsi ketika transmisi dan menyimpan informasi sensitif. Sebuah pemahaman dasar tentang teknologio informasi masalah keamanan sering menjadi bagian dari pengetahuan pengembang Web.
Ketika membangun sebuah aplikasi web ada praktek umum yang harus diikuti untuk meningkatkan keamanan. Selain
keamanan dasar dari server sistem informasi dan runtimes, pengembang
web harus mengikuti pedoman diterima untuk menulis aplikasi yang aman. Praktek-praktek terbaik memperluas pada praktek keamanan terbaik yang harus diterapkan untuk semua aplikasi.
- VALIDASI INPUT
Ada berbagai macam alasan untuk memvalidasi masukan:
- Validasi input membantu memastikan integritas data. Seorang pengguna dapat sesuatu masukan yang tak terduga.Sebuah bug pada interface klien mungkin posting sesuatu yang salah dan data yang korup.
- Form tidak bisa datang dari klien diharapkan atau dari aplikasi web yang sama. Pasca mungkin datang dari semua client. Suatu bentuk pada satu situs web ini dapat posting ke sebuah aplikasi web pada situs lain.
- Kode berbahaya dapat terhubung ke server aplikasi web dari komputer lain, dengan atau tanpa sepengetahuan pemilik. Input diposting ke sebuah aplikasi web tidak bisa datang dari pengguna akhir yang sebenarnya. Bot dan script dari sumber lain tanpa diduga dapat menghubungkan ke web server dan berusaha untuk mengirim data atau download file. Hal ini sangat umum pada server web publik.
MELARIKAN DIRI DAN OUTPUT FILTER
Setiap masukan yang datang dari pengguna dan ditampilkan
kembali di situs web dapat menjadi sumber kerentanan. Apa pun bisa dimasukkan ke output halaman yang dihasilkan jika tidak benar melarikan diri atau disaring. Konten ini dapat menyebabkan browser untuk melakukan tindakan, seperti men-download file atau mengeksekusi JavaScript. Sebuah input teks, misalnya, mungkin berisi
HTML yang membatalkan halaman atau menyuntikkan JavaScript ketika itu
diberikan kemudian, memperlihatkan Coss-site scripting (XSS) kerentanan. Gunakan built-in fungsi melarikan diri atau strip bila tersedia.
- DATABASE
Ada beberapa cara di mana database untuk aplikasi web harus diamankan.
- Mengamankan database itu sendiri dengan membatasi sumber koneksi, account pengguna, dan perizinan.Umumnya, menciptakan lingkungan database yang seketat mungkin sementara masih memungkinkan aplikasi untuk berfungsi.
- Mengatur server database untuk hanya menerima koneksi dari server aplikasi web. Bahkan jika server memiliki firewall, perangkat lunak database itu sendiri seharusnya hanya mendengarkan koneksi dari aplikasi web.
- Jangan membuat account pengguna database untuk setiap pengguna aplikasi web (ketika itu tidak mutlak diperlukan). Buat satu account pengguna untuk selalu digunakan oleh aplikasi. Menangani otentikasi pengguna di tingkat aplikasi.
- Pengguna aplikasi tunggal database hanya harus memiliki jumlah minimum hak akses yang diperlukan.Misalnya, jangan biarkan aplikasi web database pengguna untuk membuat tabel, menghapus tabel, atau mengubah hibah jika tidak diperlukan.
- Pertimbangkan untuk menjalankan semua pertanyaan melalui prosedur yang tersimpan dan tidak memberikan database user hak akses apapun selain pelaksanaan prosedur tersebut disimpan. Ini akan sangat membatasi kemampuan pengguna database.
- Jangan hasilkan SQL didasarkan langsung pada form input. Jika klien bisa mengirim nama field atau menghasilkan SQL mereka sendiri, sering mengekspos data dengan cara yang tak terduga.
- Melarikan diri form input sehingga SQL tidak bisa disuntikkan langsung oleh klien.
- ENKRIPSI
Informasi khususnya aman, seperti password dan nomor kartu
kredit, tidak harus disimpan dalam format tidak terenkripsi.Satu arah fungsi enkripsi harus digunakan bila dekripsi tidak pernah diperlukan, seperti dengan password. Untuk
mengkonfirmasi password, misalnya, mengenkripsi input pengguna dan
membandingkan nilai yang bertentangan dengan password terenkripsi yang
tersimpan dalam sistem.
http://ordinaryit.blogspot.com/2012/03/perkembangan-website.html