Server bikin sendiri sebenarnya sama aja dengan hosting. Setahu saya asal ada web application (apache, nginx,litespeed,dll), Php application server dan database server (mysql, mariadb,dll) maka bisa disebut web hosting. Kebanyakan web app dibuat dengan platform php dan mysql walaupun platform lain juga banyak seperti .net, asp.
Yang perlu dilakukan untuk setting web server adalah install dan configure app yang dibutuhkan:
- Apache, nginx,
- mysql, mariadb
- DNS server
- FTP server
- dll
Banyak toturial di internet yang bisa dijadikan referensi. Kalau sudah jadi tinggal ditentukan fungsinya mau buat apa. Kalau buat aplikasi di level lokal aja atau akses LAN pakai PC biasa aja yang ditaruh dikantor cukup sebenarnya. Kecuali mau dipublish atau mau diakses dari luar jaringan kantor ini bisa jadi beda ceritanya.
Kalau mau publish harus disiapkan koneksi dedicated 1:1, web server itu perlu upload yang kenceng bukan download. Percuma kalau server udah bagus tapi networknya lelet. Makanya biasanya pada pakai colocation yang udah disediapain uplink yang stabil dan power serta suhu yang ideal untuk server.
Saran saya kalau untuk kebutuhan yang scalabilitasnya nggak tinggi dan butuh diakses dari luar mending pake shared hosting saja, lebih hemat. Anda nggak perlu dipusingkan dengan setting apache, optimalisasi server, dsb yang perlu hanya maintenance dari sisi aplikasi aja.