|
As part of the bf3Web solution, the bf3Vfs Virtual File System provides access to the downloadable
content delivered by the bf3Web Embedded Webserver. The bf3Vfs file system offers the following features:
-
Hierarchical directory structure for memory-based storage of up to 65,534 files.
-
Directory-level user authentication with login and pasword for upto 16 users.
-
Integrated real-time clock for timestamping of static and dynamic downloadable content.
-
Graphical configuration and integration through bf3Vfs Integration Tool.
DSP application developers can start the design of their website using standard authoring tools such as
Macromedia Dreamweaver or Microsoft Frontpage. The bf3Web Integration Tool will convert the webpages
and related files (e.g. images) to C source files, and implement the file structure in the
bf3Vfs Virtual File System. All source files generated by the bf3Web Integration Tool are automatically
added to the DSP project.
The bf3Web Webserver handles resource requests based on the filename extensions
(e.g. '.htm' for plain HTML files, or '.cgi' for CGI scripts), which can be registered with the bf3Web instance.
A single bf3Web instance can host multiple websites, each with their own root directory in the bf3Vfs file system.
bf3Web makes use of the authentication features of bf3Vfs for granting access to website directories by HTTP
client applications, such as Netscape Navigator or Internet Explorer.
Dynamic Content
The content that is downloaded by an HTTP client application from a bf3Web instance can be either static
files or dynamically generated resources. Static files are directly retrieved from the bf3Vfs file system.
Dynamic resources are generated by so-called resource handlers, which process the request from the
client application. With the file extension, a resource handler is registered for each file type.
The bf3Web Embedded Webserver includes two resource handlers: one for Server-Side Includes (SSI) and one
for Common Gateway Interface (CGI) scripts.
The SSI resource handler scans a template file for resource
strings in a '$$' format, and will call an application function to replace this string for a
dynamic value. For example, if the resource string were '$COMPANY$', the application would perhaps
return 'Windmill Innovations'. When the complete file has been parsed, it is forwarded to the bf3Web
Embedded Webserver for transfer to the HTTP client. The main advantage of this method, as opposed to the
widely used SSI HTML comments (''), is that the visibility of the resource strings is
maintained in the design view of web authoring tools.
The CGI resource handler calls an application function to generate the dynamic content, possibly based on
the contents of the HTTP Query String or HTTP Entity request data. The application function parses the request
data using an HTTP string parser library provided with bf3Web. For the dynamic generation of webpages, the bf3Web
solution includes a library for the run-time generation of HTML 4.01 code.
For a fast start in the development of DSP-hosted website, the bf3Web Embedded Webserver product is
delivered with a full-featured website as reference application.
|