Portugis
Cina
Fox Pages Server (FPS) adalah server HTTP, HTTPS, dan FastCGI multithread untuk Visual FoxPro.
Dengan Fox Pages Server Anda dapat mengembangkan, men-debug, dan mendistribusikan konten web dan aplikasi dengan menggunakan Visual FoxPro.
Fox Pages Server tidak mengizinkan kode Visual FoxPro dijalankan di Internet. Oleh karena itu perlu diketahui bahasa dan alat pengembangan internet yang akan digunakan, misalnya: HTML, CSS, Javascript, JQuery, Dojo dll.
Server Fox Pages dapat digunakan dalam kombinasi dengan platform boa. Dengan cara ini Anda dapat membuat aplikasi Web tanpa pengetahuan bahasa pengembangan web. Server Fox Pages berkomunikasi dengan BOA.
Microsoft Visual Fox Pro 9.0
Fox Pages Server didistribusikan dalam dua mode: mode pengembangan dan mode distribusi.
Dalam mode ini, server bekerja secara default di singlethread, sehingga memungkinkan untuk menggunakan Visual FoxPro untuk pengembangan halaman FXP. Mode pengembangan memerlukan instalasi Visual FoxPro.
Dalam mode ini, server bekerja dalam multithread, memberikan keuntungan pemrosesan yang ekstrim. Mode distribusi memerlukan runtime Visual FoxPro yang diinstal.
Dalam mode pengembangan dan distribusi, setiap kesalahan dicatat dalam tabel di folder LOGS yang memungkinkan deteksi dan penelusuran kesalahan.
Jangan mencoba melakukan prosedur instalasi dalam mode pengembangan dan penerapan di komputer yang sama. Jika perlu, jalankan file install.bat dari mode distribusi, karena ini akan mendaftarkan komponen yang juga akan membuat Layanan Windows. Konfigurasikan mode pengembangan untuk menggunakan IP atau port selain mode distribusi.
Debugging Visual FoxPro hanya akan bekerja dalam mode pengembangan karena tidak mungkin menampilkan antarmuka apa pun ketika kode dijalankan dalam DLL multithread. Upaya apa pun akan menghasilkan kesalahan atau membekukan thread.
Tidak disarankan untuk meninggalkan file .HTML dengan .FXP yang dikompilasi di folder yang sama di server, file tersebut dapat diunduh jika ekstensinya diubah di browser web.
Fox Pages menggunakan port 80 sebagai default untuk HTTP, jadi sebelum memulai perlu menghentikan layanan apa pun yang menggunakan port 80 (IIS, Apache, dll.) atau mengubah port yang digunakan dalam program HTTP.PRG yang terletak di folder SERVERS di mode, atau di bidang PORT pada tabel SERVERS.DBF yang terletak di folder DATA dalam mode distribusi.
Protokol lain mengikuti prosedur yang sama.
Basis data FPS.DBC yang terletak di folder DATA menyimpan konfigurasi server. Dokumentasi tabel dan masing-masing bidangnya dapat ditemukan di file FPS.HTML. Hubungan antar tabel dapat dilihat pada gambar FPS.JPG.
Server bertanggung jawab atas koneksi klien (IE, Chrome, Firefox, dll) dan server (NGinX, dll).
Setiap server berjalan pada thread terpisah dan dapat, bergantung pada konfigurasi nomor IP, mendengarkan pada port yang sama. Jika terjadi konflik nomor IP dan port, server yang dikonfigurasi pertama akan menerima koneksi.
Konfigurasikan server dengan menambahkan, mengubah, atau menghapus catatan di tabel SERVERS.DBF.
Setiap protokol default ke port tertentu:
FastCGI biasanya digunakan dalam komunikasi antar server, tidak ada port default.
Situs membangun hubungan antara HOSTNAME (misalnya www.example.com) dengan folder tempat file situs berada (misalnya c:sitesexample), dan mengkonfigurasi halaman beranda Anda (misalnya index.fxp, index.php, index .html, dll).
Konfigurasikan situs dengan menambahkan, mengubah, atau menghapus catatan di tabel SITES.DBF.
Jika field HOSTNAME diisi dengan "*" semua HOSTNAME akan terkait dengan folder yang sama.
Dalam tabel yang sama ini kami mengonfigurasi pengalihan dengan mengisi kolom REDIRECT dengan alamat lengkap pengalihan. Fitur ini sangat berguna ketika kita perlu, misalnya mengalihkan koneksi tidak aman (HTTP) ke server aman (HTTPS), hal ini dilakukan misalnya dengan mengisi kolom REDIRECT situs www.example.com dari server tidak aman (HTTP) dengan "https://www.example.com", alamat situs aman (HTTPS).
Gateway digunakan untuk mengirim permintaan ke alat pengembangan lainnya. PHP adalah satu-satunya yang diuji sejauh ini, sementara alat apa pun yang mendukung FastCGI harus kompatibel.
Konfigurasikan gateway dengan menambahkan, mengubah, atau menghapus catatan di tabel GATEWAYS.DBF.
Satu-satunya protokol yang didukung adalah FastCGI.
Gateway bekerja dengan cara yang mirip dengan Sites, membangun hubungan antara HOSTNAME (misalnya www.example.com) dengan folder tempat file situs berada (misalnya c:sitesexample). Perbedaannya terletak pada kenyataan bahwa isi field URI (misalnya ".php") harus terdapat dalam URI permintaan agar dapat dikirim ke gateway.
Berdasarkan kriteria ini, Fox Pages Server mengubah permintaan HTTP menjadi permintaan FastCGI dan mengirimkannya ke server yang dikonfigurasi. Respons FastCGI kemudian diubah menjadi respons HTTP dan dikirim ke klien.
Permintaan yang tidak memenuhi kriteria akan diproses oleh server HTTP, sehingga untuk setiap Gateway harus dikonfigurasi Situs.
Tidak semua folder dan file yang terdapat dalam suatu situs harus dapat diakses. Database, tabel, dan program adalah beberapa contohnya.
Fox Pages Server memiliki sistem kontrol akses yang memungkinkan akses resmi atau pemblokiran total folder situs.
Kontrol akses dikonfigurasi dengan menambahkan, mengubah, atau menghapus catatan dari tabel REALMS.DBF, USERS.DBF, dan REALMUSER.DBF
Tabel REALM.DBF menetapkan pengaturan akses untuk folder situs.
Tabel USERS.DBF mendefinisikan pengguna yang akan memiliki akses ke folder tersebut.
Tabel REALMUSER.DBF mencantumkan pengguna dengan folder.
Ini adalah mekanisme browser yang mencegah asal (domain) mengakses sumber daya di sumber berbeda (domain lain) tanpa izin.
Konfigurasikan otorisasi dengan menambahkan, mengubah, atau menghapus catatan di tabel CORS.DBF.
Masukkan situs yang akan memberikan otorisasi di kolom SITE. Bidang ini terkait dengan tabel SITES.DBF.
Masukkan asal (domain resmi) pada kolom ASAL, jika diisi dengan "*" asal apa pun diperbolehkan.
Masukkan resource pada kolom URI, jika diisi dengan "*" maka penolakan apapun akan diperbolehkan.
Bidang GET, POST, PUT, DELETE, HEAD, dan OPTIONS menentukan metode apa yang diperbolehkan.
Bidang HEADER harus diisi dengan header HTTP yang diizinkan. Mereka harus dipisahkan dengan koma diikuti spasi.
Fox Pages Server dapat dikonfigurasi untuk digunakan melalui server web lain menggunakan protokol FastCGI.
File nginx.conf yang terletak di folder NGINX adalah template konfigurasi untuk server NGinX. Salin file ini ke folder CONF tempat NGinX diinstal dan konfigurasikan parameter ROOT dengan path lengkap folder file situs.
Untuk mengkonfigurasi Fox Pages Server agar menggunakan protokol FastCGI, isi kolom TYPE pada tabel SERVERS.DBF dengan "FCGI".
Karena semua informasi yang diperlukan untuk pemrosesan permintaan harus disediakan oleh server web, tidak perlu mengkonfigurasi situs, gateway, atau keamanan.
Setelah server dinyalakan, gunakan browser apa pun dengan mengetikkan alamat server yang dikonfigurasi (misalnya http://localhost, https://localhost).
Untuk masuk ke situs demo ada dua akun, satu untuk klien dan satu lagi untuk perwakilan.
Akun pelanggan mengakses area pelanggan. Untuk mengakses, gunakan email [email protected] dan kata sandi 123456.
Akun perwakilan memulai aplikasi untuk pendaftaran pelanggan dan pesanan. Untuk mengakses gunakan email [email protected] dan kata sandi 123456.
Halaman dinamis menggunakan bahasa pemrograman sisi server dalam pengembangan situs web atau aplikasi Internet.
Halaman Server Fox memungkinkan untuk mengembangkan halaman-halaman ini menggunakan sumber daya halaman statis pengembangan (misalnya HTML, CSS, Javascript) dengan fitur pemrograman Visual Fox Pro (misalnya bahasa pemrograman konsol, database).
Di Fox Pages Server, halaman HTML diubah menjadi file program PRG dan dikompilasi menjadi file FXP yang dikompilasi, sehingga pemrosesan halaman sangat cepat dan tidak memiliki batasan dalam menggunakan penerjemah lain.
Pada proses kompilasi hanya kode antara tag <FPS>
dan </FPS>
yang akan diproses, selebihnya akan dikirimkan sebagai konten statis.
Contoh konten statis.
<HTML>
Hello World
</HTML>
Hasil:
Halo Dunia
Contoh program sebagai konten statis karena tag <FPS>
dan </FPS>
hilang.
<HTML>
for nCounter = 1 to 3
Hello World
next
</HTML>
Hasil:
untuk lnCounter = 1 hingga 3
Halo Dunia
Berikutnya
Contoh penggunaan tag <t>
dan <e>
, mereka bertanggung jawab untuk mengirimkan teks dan ekspresi statis.
<HTML>
<FPS>
cWorld = "World"
for nCounter = 1 to 3
<t>Hello </t><e>cWorld</e><br>
next
</FPS>
</HTML>
Hasil:
Halo Dunia
Halo Dunia
Halo Dunia
Contoh penggunaan pemrograman gabungan tag HTML lainnya. Setiap baris dimulai dengan tag HTML atau dengan tag <t>
dikirim.
<HTML>
<FPS>
<b>Begin</b><br><br>
cWorld = "World"
for nCounter = 1 to 3
<b><t>Hello </t><e>cWorld</e></b><br>
next
<br>
<t>End</t>
</FPS>
</HTML>
Hasil:
Mulai
Halo Dunia
Halo Dunia
Halo Dunia
Akhir
REST (Representational State Transfer) adalah gaya arsitektur yang menganjurkan agar aplikasi Web harus menggunakan HTTP seperti yang dimaksudkan semula, di mana permintaan GET, PUT, POST, dan DELETE harus digunakan masing-masing untuk kueri, perubahan, pembuatan, dan penghapusan.
Fox Pages Server memproses permintaan sebagai REST setiap kali header Terima adalah "application/json" atau "application/xml".
Detail lebih lanjut dapat ditemukan di aplikasi yang tersedia di situs demo saat masuk dengan akun perwakilan.
Dengan Fox Pages Server Anda dapat membangun REST API untuk melayani permintaan platform BOA. Anda dapat membuat aplikasi web lengkap di Visual Foxpro. Halaman Server Fox akan menanggapi permintaan yang dikirim oleh BOA. Data yang dikirim antara Fox Server Pages dan BOA adalah string JSON yang mudah dipahami.
Setelah menyiapkan halaman Visual Fox, Anda dapat menguji kekuatan kombinasi ini. Mulai demo di https://www.BOA-platform.com atau melalui tautan langsung ini: http://demo.boa-platform.com. Saat layar login muncul, Anda dapat menggunakan yang berikut ini:
Pengguna: en
Kata sandi: en01
URL server API: http://localhost/boa. Ini adalah Server Fox Pages lokal Anda.
Lihat folder demo/boa untuk contoh kode sumber.
Untuk dukungan protokol FastCGI, pemrosesan properti objek Permintaan dan Respons telah diubah.
Dalam versi 2.0, header dengan tanda hubung (misalnya Accept-Encoding) telah dihapus tanda hubungnya (misalnya AcceptEnconding). Pada versi 3.0 tanda hubung ini diubah menjadi garis bawah (misalnya Accept_Encoding).
Fox Pages Server adalah perangkat lunak sumber terbuka dan gratis. Lisensi terletak di file LISENSI.
Komponen yang digunakan untuk sambungan adalah Socketwrench dari perusahaan Catalyst Development Corporation (www.sockettools.com).
Komponen ini didistribusikan dalam versi gratis dan komersial. Versi gratisnya tidak mendukung koneksi aman (SSL/TLS).
Versi pengembangan Fox Pages Server dikonfigurasi untuk menggunakan SocketWrench versi gratis. Ini akan menjadi batasan hanya jika penggunaan koneksi aman di lingkungan pengembangan diperlukan.
Untuk menggunakan SocketWrench versi komersial, Anda harus membeli lisensi, karena Fox Pages Server tidak menyertakan lisensi ini.
Konfigurasi versi yang digunakan, gratis atau komersial, atau versi SocketWrench, terletak di file FOXPAGES.H folder CORE, sebagai berikut:
//Kunci pas soket
#DEFINISIKAN PENGGUNAAN FREEEVERSI
#DEFINE CSWSOCK_CONTROL "SocketTools.SocketWrench.6"
// Kunci Pas Soket 8
//#DEFINE CSWSOCK_CONTROL "SocketTools.SocketWrench.8"
//#DEFINE CSWSOCK_LICENSE_KEY "MASUKKAN LISENSI RUNTIME ANDA DI SINI"
// Kunci Pas Soket 9
//#DEFINE CSWSOCK_CONTROL "SocketTools.SocketWrench.9"
//#DEFINE CSWSOCK_LICENSE_KEY "MASUKKAN LISENSI RUNTIME ANDA DI SINI"
Anda perlu mengkompilasi ulang proyek setelah Anda mengubah pengaturan ini.
Multithreading - VFP2C32T.FLL - Christian Ehlscheid
Kompresi - VFPKompresi - Craig Boyd
Enkripsi - VFPEnkripsi - Craig Boyd
JSON Parser - Versi perpustakaan yang dimodifikasi - Craig Boyd
Soket - Kunci Pas - Pengembangan Katalis
Jika proyek ini bermanfaat bagi Anda, pertimbangkan untuk memberikan donasi.