VbFcgi
Kode back-end aplikasi web Anda di VB6! VbFcgi memudahkan Anda memanfaatkan pengetahuan pemrograman Anda saat ini dan bahkan mendapatkan aplikasi klien/server VB6 yang ada di web.
Perkenalan
VbFcgi adalah Kerangka Host/Server FCGI untuk Aplikasi Web Visual Basic 6 (VB6) ActiveX/COM DLL. Ini dikembangkan melawan Nginx, tetapi harus bekerja dengan server web apa pun yang mengimplementasikan spesifikasi FCGI.
Diagram Proses
Termasuk Biner
Ada 3 komponen utama kerangka VbFcgi:
- VbFcgiLib.dll - Ini adalah pustaka kerangka kerja utama yang mencakup semua kode untuk mendengarkan dan merespons permintaan FCGI dari server web, serta menguraikan catatan untuk parameter FCGI, cookie HTTP, dll... File ini harus disertakan dengan setiap distribusi aplikasi FCGI Anda.
- VbFcgiHost.exe - Ini adalah file utama yang dapat dieksekusi yang akan menghasilkan pendengar FCGI sebagai perantara antara server web dan aplikasi FCGI Anda. Ini mencakup dukungan untuk menjalankan beberapa pendengar pada port berurutan untuk penyeimbangan beban, dan juga memantau pendengar yang dihentikan yang memerlukan respawning. Terakhir, ia juga bertindak sebagai koordinator penutupan untuk semua instance pendengar FCGI yang sedang berjalan. File ini harus disertakan dengan setiap distribusi aplikasi FCGI Anda.
- VbFcgiApp.dll - Ini adalah kode Aplikasi FCGI demo. Versi yang disertakan di sini adalah bukti konsep yang sangat mendasar yang akan mengirimkan halaman HTML upstream dengan tabel parameter FCGI yang diterima, juga menunjukkan penggunaan dasar cookie dan parameter kueri HTTP. File ini tidak boleh disertakan saat mendistribusikan aplikasi FCGI Anda sendiri! Sebaliknya Anda harus membuat versi Anda sendiri seperti yang dijelaskan di bagian Membuat Aplikasi FCGI Anda sendiri di bawah.
Meskipun DLL di atas adalah pustaka COM ActiveX, Anda TIDAK perlu mendaftarkannya ke regsvr32 saat menyebarkannya ke pengguna karena kode ini menggunakan pustaka DirectCOM bebas registrasi Olaf Schmidt. Namun Anda harus mendaftarkan DLL di atas pada mesin pengembangan Anda.
Juga disertakan build biner Nginx dengan konfigurasi dasar untuk mendukung pendengar server host FCGI tunggal di localhost:9100. Ini disertakan demi kenyamanan dan untuk menunjukkan konfigurasi minimal. Anda harus menjalankan Nginx (atau server web lain) yang dikonfigurasi dengan benar dalam banyak kasus.
Terakhir, saya juga menggabungkan perpustakaan vbRichClient5 Olaf Schmidt yang luar biasa (http://www.vbrichclient.com/), sekali lagi demi kenyamanan. Anda selalu bisa mendapatkan versi terbaru dari situs web vbRichClient5.
Penggunaan Demo
- Jika Anda belum menjalankan server web, jalankan nginx dari baris perintah dengan masuk ke folder .VbFcgibinnginx lalu jalankan perintah nginx.exe. Jika Anda sudah menjalankan server web, pastikan server tersebut dikonfigurasi untuk meneruskan permintaan *.fcgi dari browser upstream ke 127.0.0.1 port 9100.
- Dari baris perintah, mulai VbFcgiHost.exe dengan perintah berikut: vbfcgihost.exe /host 127.0.0.1 /port 9100 /spawn 1
- Buka browser Anda dan buka http://127.0.0.1/vbfcgiapp.fcgi - Anda akan melihat respons HTML dari aplikasi demo FCGI.
Membuat Aplikasi FCGI Anda sendiri
Anda dapat menggunakan kode sumber VbFcgiApp yang disertakan sebagai titik awal - semua pekerjaan dilakukan dalam metode IFcgiApp_ProcessRequest, jadi berikan tinjauan menyeluruh.
Untuk menulis aplikasi FCGI Anda sendiri dari awal, Anda harus:
- Mulai proyek ActiveX DLL baru di VB6.
- Ubah nama proyek dari "Project1" menjadi "MyFcgiApp" (atau nama apa pun yang Anda inginkan).
- Ubah nama "Class1" menjadi "CFcgiApp".
- Tambahkan referensi ke VbFcgiLib dari menu Proyek > Referensi.
- Di bagian Umum kelas "CFcgiApp", ketik; Mengimplementasikan VbFcgiLib.IFcgiApp
- Pilih "IFcgiApp" dari daftar drop-down dalam tampilan kode. Ini akan membuat metode IFcgiApp_ProcessRequest untuk Anda.
- Kodekan aplikasi Anda dalam metode IFcgiApp_ProcessRequest (yang lainnya).
- Bangun aplikasi DLL Anda.
- Buat salinan DLL yang dibuat dan ubah ekstensinya menjadi .fcgi.
- Pindahkan file .fcgi ke folder yang sama dengan file VbFcgiHost.exe dan VbFcgiLib.dll.
CATATAN: Anda tidak perlu mendaftarkan DLL aplikasi FCGI Anda, atau VbFcgiLib.dll saat mendistribusikannya karena instantiasi bebas registrasi digunakan oleh kerangka kerja ini.
Ketika Anda kemudian menjalankan VbFcgiHost.exe, ia akan menggunakan .fcgi Anda sebagai "plugin" (semacamnya) untuk menanggapi permintaan FCGI yang sesuai. Misalnya, mengetik http://localhost/myapp.fcgi akan menyebabkan VbFcgiHost membuat instance kelas CFcgiApp dari DLL myapp.fcgi yang disimpan di folder yang sama, lalu akan memanggil IFcgiApp_ProcessRequest di kelas tersebut.
Menikmati!