Web server employing multi-homed, modular framework
First Claim
1. A computer executing a Web server program, comprising:
- a plurality of virtual hosts accessible using connection requests passed over a computer network, each of the virtual hosts being identified by a corresponding virtual host identifier includable in a connection request;
a plurality of executable modules, each of the modules defining a predetermined function;
a plurality of configuration sub-files corresponding to the virtual hosts, each of the configuration sub-files defining which of the executable module functions are usable by a corresponding one of the virtual hosts.
1 Assignment
0 Petitions
Accused Products
Abstract
A Web server is provided having a multi-homed, modular framework. The modular framework allows extensions to the Web server to be easily compiled into the Web server, allowing the extensions to run natively as part of the server instead of incurring the overhead typical of CGI scripts, for example. The multi-homing capabilities of the Web server provide the appearance to Web users of multiple distinct and independent servers, allowing a small company or individual to create the same kind of Web presence enjoyed by larger companies. In effect, multiple virtual servers run on the same physical machine. The Web server as a whole is easily extensible to allow additional capabilities to be provided natively within the Web server itself. Furthermore, each virtual server is independently configurable in order to turn different capabilities on or off or to modify operation of the virtual server. The Web server is also provided with enhanced security features, built-in animation capability, and other features that afford maximum flexibility and versatility.
-
Citations
10 Claims
-
1. A computer executing a Web server program, comprising:
-
a plurality of virtual hosts accessible using connection requests passed over a computer network, each of the virtual hosts being identified by a corresponding virtual host identifier includable in a connection request;
a plurality of executable modules, each of the modules defining a predetermined function;
a plurality of configuration sub-files corresponding to the virtual hosts, each of the configuration sub-files defining which of the executable module functions are usable by a corresponding one of the virtual hosts. - View Dependent Claims (2, 3, 4)
a plurality of log files corresponding to the virtual hosts.
-
-
4. The computer of claim 1, further comprising:
means for creating a log entry identifying at least one of the virtual hosts accessed by a connection request.
-
5. A computer executing a server software program, comprising:
-
a plurality of executable software modules associated with a plurality of file extensions, each of the software modules defining a predetermined function;
means for receiving a request from a remote host, the request including a file extension and a virtual machine identifier;
a defaults file, listing the file extensions of the executable software modules, usable for matching the file extension included in the request to at least one of the software modules; and
a configuration file for defining which of the executable software modules are available based on the virtual machine identifier. - View Dependent Claims (6, 7, 8, 9, 10)
an access rules database for governing access to at least one virtual machine.
-
-
8. The computer of claim 7, wherein the access rules database includes a deny portion and an access portion.
-
9. The computer of claim 7, wherein the access rules database includes time restrictions for limiting access the at least one virtual machine.
-
10. The computer of claim 7, wherein the access rules database includes at least one entry specifying an accessing machine by domain name or internet protocol (IP) address.
Specification