Book Home

Contents
Preface

Overview
Installation Guide
Quick Start & Tours
Sample ODBC & JDBC Applications
Conceptual Overview
Administration
Virtuoso Cluster Operation
Data Access Interfaces
Virtual Database Engine
SQL Reference
Virtuoso Cluster Programming
SQL Procedure Language Guide
Database Event Hooks
Data Replication, Synchronization and Transformation Services
Web Application Development
The HTTP Server
Web Services ACL (Access Control List)
Virtuoso Server Pages (VSP)
Virtuoso Server Pages for XML (VSPX)
Deploying ASP.Net Web Applications
ASMX Web Service Hosting
Blogging & Weblogs
Deploying PHP Applications
Deploying JSP Applications
Perl Hosting
Python Hosting
Ruby Hosting
XML Support
RDF Data Access and Data Management
Web Services
Runtime Hosting
Internet Services
Free Text Search
TPC C Benchmark Kit
Using Virtuoso with Tuxedo
Appendix
Virtuoso Functions Guide

Abstract

This chapter deals with the Virtuoso HTTP Server, its Dynamic Page generation and components used to configure it. The HTTP Servers features include:

Table of Contents

15.1. The HTTP Server
15.1.2. HTTP Server Base Configuration
15.1.3. Virtual Directories
15.1.4. Authentication
15.1.5. Session Management
15.1.6. Writing Your Own Authentication and Session Handling
15.1.7. Cancellation of Web Requests
15.1.8. Virtuoso WebRobot API
15.1.9. HTTP Server Extensions
15.1.10. Chunked Transfer Encoding
15.1.11. Using Virtuoso Server capabilities via Apache Web Server
15.2. Web Services ACL (Access Control List)
15.2.1. General purpose ACLs
15.2.2. ACL Definition/Removal
15.2.3. Using ACL's Within Application Logic
15.2.4. Predefined ACLs
15.3. Virtuoso Server Pages (VSP)
15.3.2. VSP Markup & Basic Functions
15.3.3. Access Request Information
15.3.4. Errors in Page Procedures
15.3.5. /INLINEFILE HTTP Server Pseudo-Directory
15.3.6. Beyond Basics
15.3.7. Long HTTP Transactions
15.3.8. Using chunked encoding in HTTP 1.1
15.3.9. Making Simple Dynamic Web Pages
15.3.10. Generation of non-HTML output
15.3.11. Post VSP XSLT Transformation Mode
15.3.12. XML & XSLT Generated VSP Pages
15.4. Virtuoso Server Pages for XML (VSPX)
15.4.1. Processing Model
15.4.2. Object Model
15.4.3. Keeping Page and Session State
15.4.4. Application Code
15.4.5. A Simple Example
15.4.6. VSPX Event Handler Parameters
15.4.7. Registering a VSPX Event Callbacks
15.4.8. Commonly Used Types of Attributes of VSPX Controls
15.4.9. VSPX Controls
15.4.10. XForms rendering
15.4.11. XMLSchema for VSPX page
15.5. Deploying ASP.Net Web Applications
15.5.2. Programming Concepts
15.5.3. ASP.Net Deployment & Configuration
15.5.4. The Mono Project
15.5.5. Migrating ASP.Net Applications to Virtuoso
15.6. ASMX Web Service Hosting
15.7. Blogging & Weblogs
15.7.1. The Virtuoso Blogging Application
15.7.2. Blogger Clients Compatibility
15.7.3. Blogs Management User Interface
15.7.4. Community Blog Site
15.7.5. Blogger API
15.7.6. MetaWeblog API
15.7.7. Movable Type API
15.7.8. Atom API
15.7.9. XML-RPC Endpoint Configuration
15.7.10. Blog Hooks - Customizing the Blog Server
15.7.11. Blogger Client API
15.7.12. xmlStorageSystem API
15.7.13. User's Blog quota
15.7.14. Posting a message in to the Blog
15.7.15. Multi-author blogging
15.7.16. Posting a comments
15.7.17. Blog Post Upstreaming (bridging)
15.7.18. Weblogs API
15.7.19. Subscriptions
15.7.20. Trackback API
15.7.21. Pingback API
15.7.22. E-mail Notifications
15.7.23. Comments tracking options
15.7.24. Subscription Harmonizer API
15.7.25. Mobile Blogging (Moblog)
15.7.26. Posting a dynamic content
15.7.27. Notification Services
15.7.28. Rendering the RSS feed in WML format
15.8. Deploying PHP Applications
15.8.2. Building the Virtuoso Server With PHP Extension
15.8.3. PHP Extension Functions
15.8.4. PHP Examples
15.9. Deploying JSP Applications
15.9.2. Environment Setup & Verification
15.10. Perl Hosting
15.11. Python Hosting
15.12. Ruby Hosting

Virtuoso provides a full function web server with dynamic web page generation capability using SQL procedures embedded in HTML or XML via VSP or VSPX. Runtime hosting allows Virtuoso to generate dynamic web pages from other sources also, such as ASP.Net, PHP or JSP.

Out-of-the-box Virtuoso listens for HTTP requests on the port defined in the HTTP Server section of the Virtuoso INI file. The Visual Server Administration Interface is available at this port and can be used to further configure the web server.

Web resources can be based on the file system, reside in the database or in WebDAV or any combination of all of them. WebDAV space can be specified at the path level, by default, paths beginning with /DAV are mapped to the WebDAV root collection (directory) and all other paths are assumed to be file system based. By default / is mapped to the directory specified as ServerRoot in the HTTP Server section of the virtuoso.ini file.

Virtual Directories provide a way to make mappings from paths to other resources such as specific file system or WebDAV locations, other HTTP Servers acting as a proxy or to alter specific processing or authentication rules for a directory.