Back to: Projects Home . . . . . . . . Server Resource Data
Last Modified: 5 June 1996

This page: http://www.iangraham.org/projects/server.html

Information Obtainable about a Server and its Resources

Given access to the server filesystem and the HTTP server configuration files, a smart user (or smart software) can obtain a lot of information about the resources archived and served out by a server. These resources can be data files (web pages, images, video, etc.) or downloadable programs (multimedia plugins, java applets, etc.), processed data files (HTML documents processed via server-side includes, or other stream-filtered data where the served data type is known prior to processing) or executable server process output (either gateway programs or built-in server processes).

There are at least two important and distinct views of these data: internal and external. An internal view shows the data files and other resources as seen by the server, filesystem and/or attached databases. An external view shows the data as seen by visitors to the server, and shows only that view of the data designed for public consumption.

External visitors to a web site see the data after all server processing has been completed, and are unaware of much of what has been done to the data prior to delivery by the server. Thus such users see one particular variant on the data, dependent on the access methods used. For example, a user may not know that a returned HTML document was server-processed (with server-side includes, for example), or that a particular file came from a database, as opposed to the filesystem.

Internal views show a more complete view of the data -- they can tell if a particular file is simple data, data to be filtered prior to delivery (for example, via server-side includes, in which case the internal view also explicitly indicates the includes to be used) or gateway programs to be executed. At the same time, internal views do not necessarily show what a visitor will see -- in many cases, the details of a served resource can only be obtained by actually executing the resource and viewing the output.

Thus the internal and external views are complementary and not isomorphic -- there is no one-to-one relationship between the resource and the external view of the resource. This is because 'live' documents served by gateway may depend on user input, such that the actual content or function of a document seen externally may change from invocation to invocation. IN this sense both the external and internal views are 'incomplete'. A complete understanding of a server thus requires an understanding of both the internal and external views.

In principle, some of the ambiguities in these views can be mitigated by adding meta-information to data files. For example, HTML documents that are processed prior to delivery can contain META or LINK elements that describe the purpose of the document and/or its important relationships to other documents. This type of meta-information can be used to determine the role of a document in the absence of functional content indicating the role. This, of course, is not possible with other types of data files.

The following sections outline the information that can be obtained about server=resource, from both the internal and external viewpoints. Section 3 proposes a data structure for recording these data.


( This document and related pages were originally located at: http://www.utoronto.ca/ian/docs/Reports/server.html )

Back to: Projects Home . . . . . . . . Server Resource Data
Last Modified: 5 June 1996