Saya akan mulai membuat situs web proyek musik untuk seorang teman. Itu seharusnya cukup sederhana untuk saat ini: tidak ada konten dinamis (tanggal tur, dll.), Dan tidak lebih dari beberapa lagu sampel tertanam atau tautan SoundCloud. Saya tidak mengharapkan untuk menggunakan apa pun selain vanilla JavaScript dan Bootstrap atau Foundation untuk grid responsif.
Apakah ini cukup? Bisakah saya cukup mengunggah file HTML, CSS, dan JS ke host dan selesai, atau haruskah saya meluangkan waktu untuk memprogram server backend dalam Node atau PHP?
Jawaban:
Jika Anda tidak tahu apakah Anda memerlukan kode sisi server, Anda mungkin tidak *
* Peringatan : Kode sisi server sangat penting untuk keamanan, ketika Anda ingin mengontrol akses ke konten, data, atau fungsionalitas secara internal. (Tidak harus menjadi server Anda , lihat paragraf terakhir.)
Tanyakan pada diri Anda masalah apa yang akan diselesaikan dengan menggunakan teknologi sisi server. Jika Anda tidak dapat memikirkan apa pun (dan dalam kasus Anda, saya juga tidak bisa) maka Anda tidak memerlukannya.
Ketahuilah bahwa lebih dari yang Anda pikir mungkin hanya menggunakan kode sisi klien. Kerangka kerja JavaScript seperti AngularJS atau ReactJS dapat memungkinkan Anda berintegrasi dengan pihak ketiga, konten dinamis melalui API menggunakan Ajax. (Ini termasuk menghubungkan ke API yang dapat menangani keamanannya sendiri.)
sumber
Server-side code is essential for security
beberapa pengembang tidak memberikan af * ck tentang keamanan. Tidak sampai Anda melemparkan wajah mereka di ... kekacauan mereka. Baris saya adalah jika Anda memerlukan otentikasi, Anda memerlukan back office. Jika Anda perlu menyimpan data, Anda memerlukan backoffice di mana data akan diperiksa untuk kedua kalinya setelah diperiksa oleh sisi klien.Baca tentang generator situs statis. Ini memungkinkan Anda untuk membuat situs dengan cara terprogram (menggunakan templat, data, dll), dan bukan dengan kerajinan tangan HTML. Hasilnya adalah serangkaian HTML dan CSS statis yang tidak memerlukan backend.
https://www.staticgen.com/ mencantumkan dan memberi peringkat sejumlah generator open-source; persembahan tertutup mungkin juga ada.
sumber
Can I simply upload HTML, CSS, and JS files to a host and be done with it, or should I take the time to program a backend server in Node or PHP?
tidak ada panggilan untuk menunjukkan bahwa ada 3, dalam kasus OP agak menarik, pilihan IMHO :)Anda dapat dan harus menggunakan hanya situs statis jika cukup, atau menggunakan generator situs statis . Mengapa? Maintabilitas. Kode memiliki bug. Setiap beberapa minggu ada lubang keamanan WordPress lain yang ditemukan. Jika Anda menggunakan CMS umum, Anda harus menambalnya terus-menerus. Jika tidak, situs web teman Anda akan segera mengandung iklan untuk obat-obatan terlarang, propaganda ISIS, malware yang diinstal pada komputer pengunjung atau lebih buruk lagi. Bahkan jika Anda secara teratur menambalnya, Anda mungkin sudah terlambat sehingga Anda harus selalu memeriksa peretasan. Ada cara untuk mengamankan CMS ini. Instal "plugins keamanan", konfigurasikan firewall aplikasi web seperti mod_security dll. Semua hanya berfungsi. Mereka juga harus terus diperbarui. Terkadang aturan mod_security Anda akan merusak plugin untuk WordPress, Anda harus menganalisis dan memperbaikinya. Lebih banyak pekerjaan.
Anda mungkin berpikir, tidak ada yang mau meretas situs itu. Tetapi untuk lubang keamanan umum yang ditemukan dalam sistem CMS umum, segera ada bot otomatis yang merayapi / mencari web dan meretas SEMUA situs menggunakan CMS itu. Mereka hanya ingin menyebarkan tautan / malware / propaganda mereka.
Dengan situs statis (dibuat secara manual atau dengan generator), Anda tidak memiliki masalah itu.
Jika Anda menerapkan backend Anda sendiri, itu juga akan memiliki lubang keamanan (tidak ada yang sempurna) tetapi kemungkinan besar tidak ada yang akan mengeksploitasi mereka untuk situs web kecil itu. Tetapi apa yang ingin Anda terapkan? Jika Anda ingin membuat editor di mana teman Anda dapat mengubah tanggal tur sendiri, pikirkan berapa lama ini akan membawa Anda sampai cukup mudah baginya untuk digunakan tanpa bantuan Anda. Berapa kali Anda dapat dengan cepat mengubah tanggal untuknya dengan anggaran waktu itu?
Menurut pendapat saya, terlalu banyak orang saat ini hanya menggunakan sistem CMS untuk setiap situs, karena HTML statis "lama". Jika Anda tidak memerlukan apa pun yang tidak mungkin dengan HTML5, gunakan kode sisi server. Tetapi jika Anda tidak membutuhkannya, Anda menghemat banyak waktu tanpa itu.
sumber
Anda hanya perlu melakukan pemrograman backend saat Anda membutuhkannya.
Namun bahkan fitur dasar seperti formulir email biasanya memerlukan pemrograman backend dasar. Jika itu hanya situs tampilan maka ya, tidak apa-apa.
sumber
Tidak harus, tetapi ada beberapa masalah yang cenderung Anda temui jika Anda membuat keseluruhan situs dalam HTML biasa.
Banyak situs memiliki elemen menu, header, dan footer yang sama di beberapa halaman. Jika Anda cukup menyalin dan menempelkan ini dari satu halaman ke halaman lain maka ini mungkin menjadi membosankan dan rawan kesalahan karena situs semakin besar dan Anda perlu terus membuat perubahan di area ini.
Pada hari-hari sebelum pemrograman sisi server sangat umum, salah satu cara umum untuk mengatasinya adalah dengan menggunakan bingkai untuk menyematkan area ini ke setiap halaman. Ini tidak disukai beberapa tahun yang lalu, jadi saya tidak merekomendasikan melakukannya sekarang. Anda dapat menulis beberapa kode sisi server sederhana sebagai gantinya untuk menampilkan elemen-elemen umum ini pada setiap halaman.
Saya akan setuju dengan orang lain di sini yang telah merekomendasikan menggunakan CMS dari rak.
sumber