A rchive Date
[ 15-02-2001 ]
Category
[ Information Technologies ]
sub-Categoy
[ Microsoft ]
|
[Understanding FrontPage Server Extensions
What Do They Do?
The extensions work through three Web technologies: CGI (Common Gateway Interface), ISAPI, (Internet Server Application Program Interface), and HTTP. (See Figure 1) CGI and ISAPI serve the same essential purpose, allowing dynamic interaction between site visitors and the server. Through these technologies, the server extensions provide two fundamental services:
- They let the Microsoft FrontPage 2000 client (and earlier versions with varying success) communicate with the server to allow direct uploads and downloads of data and files (without requiring FTP).
- They let the server provide FrontPage-specific features to the site visitor's browser, without any extra programming or scripting on the part of the designer.
The tried-and-true way to create a Web site from remote locations has long been to author the HTML files locally and then upload them to the correct directory on the server machine through FTP. In fact, this process remains the most common way to build sites. With FPSE, however, uploads and downloads occur through HTTP's POST method, which combines with cgi to allow significant variations on the transfer of files, parts of files, and specified data strings.
Site designers use the FrontPage client to view site information and edit files. The server extensions allow the client to download detailed information about the site's files, folders, hyperlinks, configuration, and more. The various views available in FrontPage, such as Hyperlinks, Navigation, and Folders, present information about files that exist on the server, without any actual file downloads ever taking place. When an administrator requests specific site information, such as Web settings or security configuration, this information is also configurable through the direct upload/download structure. In other words, the server extensions enable the feature that makes FrontPage a strong application in the first place: direct access to the server.
Design Features
Your visitors, of course, don't care whether you have the convenience of working with the FrontPage client. They're simply interested in what they see in their browser windows. FrontPage Server Extensions let you include several features, some of which usually require programming or scripting when designed without FrontPage. These include FrontPage's Web components, accessible from the Insert menu. The Include Page component, for example, will load one HTML document inside the current HTML document at the point where the component is inserted into the text. The Substitution component lets you display a defined variable on a Web page (for instance, the author of the page), and the Table of Contents component creates a TOC for the site as a whole. In all of these cases, the page will display in the browser after being processed by the server extensions, so site authors can specify specific information at the time of the browser's request for the Web page. (See Figure 2)

Another Web component lets you build a search form, specifying the width
of the field and the labels for the buttons that appear on the page.
Perhaps the most dramatically useful feature is the ability to create Web forms that do not require CGI programming for processing. Since early in Web history, designing Web forms has proven an easy enough activity, but making the forms do anything useful has required at least a working knowledge of how CGI cooperates with HTTP, particularly the POST command and its vagaries. FrontPage Server Extensions enables designers to create Web forms, specify where the data from the forms will go (See Figure 3), and set the format in which site administrators will see it.

The Form Properties dialog let FrontPage authors specify where the server is, so they can send
the data it receives from each HTML form that users fill out.
At the simplest level, the server extensions package the data as a text message to an e-mail address specified during the form's design. At the other end of the spectrum, the extensions enable interaction with an Access database, updating the fields in the database according to the its design. The server extensions work best in this regard when installed on a Microsoft Internet Information Services-based Web server, but they provide some capabilities with other servers (and other database types) as well. (See Figure 4)
Use the Database Results Wizard to create a new database, specify where it resides,
and determine deatils such as user name and password authentication
The server extensions offer a wide range of additional authoring, administrative, and serving features, but most fit into these two essential types. For a look at all FPSE-based features, see the Features section of the FrontPage Server Extensions Resource Kit (Web site).
It's entirely possible that your system's administrators have decided they won't install FrontPage Server Extensions no matter how often users ask. This reluctance, typically, is the result of security fears. Microsoft has been aware of these fears as long as it's owned FrontPage (FrontPage originated as a product of Vermeer Technologies, which Microsoft bought in 1996, shortly after the release of FrontPage 1.0). The FrontPage Server Extensions Resource Kit (Web site), has a section focused exclusively on security (Web site). Another article that addresses a number of important security issues appears in a section on administration (Web site). The site includes a comprehensive list of what features can be disabled or customized to suit specific security situations. These explanations haven't completely convinced many server administrators, though.
If the it staff at your organization has demonstrated this reluctance, there may be little you can do to overcome it. On the other hand, if the problem is that your ISP seems less than willing to install the server extensions, you can opt either to change ISPs or, perhaps better, to have your Web site hosted by a Web Presence Provider (WPP, Web site) that supports the FPSE. A great many of these are available, and Microsoft offers a searchable list of such providers. Many have quite reasonable rates. When choosing a WPP, however, pay attention to whether you will be served from a Unix or a NT (Windows 2000) host. Unix servers are typically less expensive, but only Windows 2000 servers can offer the entire set of FPSE benefits, which include easy creation of database-driven pages. Take a while to shop around, because you'll discover an extremely wide range of prices, options, and features
The FrontPage Server Extensions 2000 package is available for most of the popular server software on the Web. Not surprisingly, the extensions function best with Microsoft's own Internet Information Server (version 3.0 and later), but they can be used with a variety of other Windows- and Unix-based server packages as well. The FPSE package installs to Microsoft Peer Web Services, Microsoft Personal Web Server, Netscape FastTrack servers 2.0 and 3.01, Netscape Enterprise Server Standard Edition 3.51, and O'Reilly WebSite Professional 2.0. A version is available for servers running on Microsoft Windows 2000 Professional, Server, and Advanced Server, and this version includes support for Microsoft Internet Information Server 5.0. Additional versions are available for Windows-based servers in non-English languages.
Microsoft offers FPSE for several Unix platforms as well, including (among others) AIX 4.x for both RS6000 and PowerPC machines, BSD/OS 3.1 and 4.0, HP-UX 10.2 and 11.0, IRIX 6.2 and 6.3, Red Hat Linux 4.1 and 5.0, and Solaris 2.6 for sparcstation and x86 machines. The downloadable package contains extensions for a number of Web server software packages specific to the platform you specify. These include, as applicable for the particular platforms, Apache 1.2.6 and 1.3.12, Netscape Enterprise Server 3.x, Netscape FastTrack Server 2.0 and 3.0.1, and the Apache-based Stronghold 2.3. You can find details on the Web for installing and managing the FrontPage Server Extensions for many of these platforms; FreeBSD administrators, for example, can go to
http://freebsd.lanfear.com/howtos/frontpage.html for instructions on using FPSE on FreeBSD 3.3 with an Apache server.
If your particular platform and server software combination does not appear on Microsoft's lists, head for the Ready-to-Run Software Web site. There you'll find additional possibilities, and you can make requests for further platform and server support if your needs are still not met.
Server administrators can download the FPSE for Windows platforms Web site and for Unix platforms Web site. The FPSE package for Windows platforms also ships with FrontPage 2000, Windows 2000, and Office 2000 Premium. Extensions developed by Ready-to-Run Software can be downloaded from http://www.rtr.com/fpsupport/.
The FrontPage Server Extensions are a set of server-side applications that let multiple authors collaborate on the same Web site and Web server. Here is an overview of server extensions features:
Support for authors
The FrontPage Server Extensions provide the following functionality to authors of FrontPage-extended webs:
- View all the FrontPage-extended webs on a server.
- Open a FrontPage-extended web for authoring.
- View, create, and delete directories.
- View, create, delete, edit, save, and rename files.
- Create and configure FrontPage-based components.
FrontPage includes a set of active components that update pages when a change occurs in the FrontPage-extended web. For example, the Table of Contents component keeps an updated table of contents of the entire web; when an author moves a page, the table of contents is updated. The Include Page component inserts the contents of one page into another; if the inserted page changes, all pages that include it are automatically updated.
- View, create, apply, and download themes.
A theme consists of unified design elements and color schemes for bullets, fonts, images, navigation bars, and other page elements. When applied, a theme gives the pages and navigation bars in a web an attractive and consistent appearance. Authors select web themes in the FrontPage client's Themes view. When the theme for a FrontPage-extended web changes, FrontPage automatically updates every page in the web to use the new theme.
These are page regions reserved for content that should appear consistently throughout the FrontPage-extended web's pages, such as a corporation's phone number and address. Shared borders usually contain navigation bars — hyperlinks to the other pages in the FrontPage-extended web.
- Set web and document meta-information.
This meta-information can be inserted on pages using the Substitution component.
- Add a document to a Microsoft Visual SourceSafe project, check it out, and check it in.
- Recalculate the hyperlink map of the FrontPage-extended web.
The hyperlink map of the web is used to display hyperlinks in FrontPage.
- Create a full-text index of the web.
This text index is used by the Search component to search the Web site for pages containing specified text.
- Add, modify, or delete an item from Tasks view.
Tasks view is a list of tasks required to complete a FrontPage-extended web. Each web can have its own list of tasks. When multiple authors are creating or editing a web, Tasks view can help them keep track of who is working on the web and what each author's assignments are.
- View and modify the navigation structure of a FrontPage-extended web, and create labels for navigation bars.
The navigation structure is the set of relationships among the pages in a FrontPage-extended web as defined in Navigation view. A well-defined structure gives a site visitor a sense of position in a web. When a navigation bar is inserted on a page that is part of a web's structure, FrontPage automatically creates hyperlinks to the pages that are below that page in the structure (child pages), above that page in the structure (parent pages), and equal to that page in the structure (pages on the same level).
- Insert the results of predefined database queries into pages.
- Change an author's password.
Support for administrators
Web administrators can use the FrontPage client to administer a FrontPage-extended web. An administrator using FrontPage does not need to be an administrator of the server computer.
The FrontPage Server Extensions provide the following functionality to Web administrators:
- Set authoring, administering, and site-browsing permissions.
- Create, delete, and rename FrontPage-extended webs.
- View the list of users or groups of a Web server or of a Windows NT domain.
- View the list of Windows NT domains.
- Add new authors, administrators, and site visitors (UNIX only).
- Set the Microsoft Visual SourceSafe project for a web.
- Specify whether or not a FrontPage-extended web has unique permissions.
The FrontPage Server Extensions have a set of administrative tools that install and maintain the FrontPage Server Extensions on the Web server.
The FrontPage Server Extensions Microsoft Management Console (MMC) Snap-in extends virtual servers on Windows and Windows NT by adding the FrontPage Server Extensions to them. The snap-in also creates new webs, uninstalls the FrontPage Server Extensions, checks FrontPage-extended webs for errors, and does other administrative tasks using the MMC graphical interface.
The Fpsrvadm utility extends webs with the FrontPage Server Extensions and updates, removes, and checks the server extensions. This utility is a command-line application that works on Windows NT and UNIX.
The HTML Administration Forms have the same functionality as the Fpsrvadm utility, but are implemented as a set of HTML forms.
The Fpremadm utility is based on the Fpsrvadm utility. It supports remote administration of the FrontPage Server Extensions using a client computer via WinInet.
Browse-time support
A visitor to a FrontPage-extended web who encounters a search form, hit counter, discussion group, or many other active features in a FrontPage-extended web, is using FrontPage Server Extensions browse-time support. Browse-time support is implemented in the FrontPage Server Extensions as components.
A component in FrontPage is an object that is inserted on an HTML page by using the FrontPage client program. It has a persistent state that is encoded in HTML comments. Components typically produce as their output HTML that is inserted in the surrounding HTML page. Components can be run at authoring time (while the FrontPage client is in use), or at browse time. For example, the Include Page component is an authoring-time component that inserts the contents of one page in another.
The following is a list of some browse-time components.
The Search Form component uses the full-text index created by the server extensions. It appears as a form on a page. When a site visitor submits a search form containing words to locate, the search form returns hyperlinks to all pages in the FrontPage-extended web that contain those words.
The e-mail form handler gathers information from a form, formats the information, and sends it to an e-mail address.
The discussion form handler lets site visitors participate in an online discussion. It collects information from a form, formats it into an HTML page, and adds the page to a table of contents and to a text index.
When a site visitor browses to an HTML page containing a browse-time FrontPage-based component, the server extensions do whatever processing is required and then generate a new HTML page to display the results of the operation. For example, the search form generates a list of hyperlinks in HTML, and the e-mail form handler generates a page confirming that a form's contents have been processed and sent to an e-mail address.
An HTML page with no browse-time FrontPage-based components does not use the server extensions when a site visitor browses to the page. Instead, the normal Web server page-retrieval process occurs.
Collaboration support
Web site authoring is typically a collaborative activity, especially on an intranet. The FrontPage Server Extensions support this collaborative process in many ways.
Because any Web site contains many documents in one or more folders, it is natural for multiple authors to be working on the Web site at the same time: creating, opening, editing, and saving pages and other files simultaneously. Using the Refresh command in the FrontPage client, authors can update their local view of the FrontPage-extended web to see any changes made by other authors.
In the FrontPage client Reports view, the contents of a FrontPage-extended web can be tracked by approval level, assigned author, or publishing status. The FrontPage client also generates lists of pages based on built-in or user-defined categories such as Expense Report, Schedule, or Ideas.
Along with general collaboration features, the FrontPage Server Extensions support three levels of FrontPage-extended web content protection. Each level provides an increasing level of security:
By default, when an author attempts to open a page that has already been opened by another author, the FrontPage Server Extensions warn the author who is trying to open the page. The author can either open the page as read-only and save it as a new page, or cancel the Open command.
The FrontPage Server Extensions can be configured to support checking files in and out from a FrontPage-extended web. When the web is configured in this way, a file cannot be opened without its first being checked out. When a file is checked out, it cannot be opened by another author.
The FrontPage Server Extensions can be configured to support checking files in and out from a FrontPage-extended web by using a Microsoft Visual SourceSafe project. When the web is configured in this way and a file is checked out from the FrontPage-extended web, it is also checked out of the Microsoft Visual SourceSafe project. Using this method of source control gives a workgroup the full power of using a Visual SourceSafe project, thus tracking all changes that any author makes to a file.
FrontPage Server Extensions and Microsoft Office 2000
The FrontPage Server Extensions are integrated into Microsoft Office 2000 and, as part of the Office Web Server, allow Office 2000 applications to access FrontPage-extended webs. When an Office Web Server is present on an organization's intranet, Office 2000 authors can save their Word, Excel, and other Office 2000 documents directly to FrontPage-extended webs, and they can open their documents from FrontPage-extended webs.
After a Word, Excel, or other Office document is added to a FrontPage-extended web, either as an HTML document or in another format, the FrontPage Server Extensions adds the document to the hyperlink map of the FrontPage-extended web. This makes all of the automatic hyperlink-fixing functionality in FrontPage available to the Office 2000 document.
For example, when a Word or Excel document that contains relative hyperlinks is moved to another folder in a FrontPage-extended web, the FrontPage Server Extensions update all relative hyperlinks in that document so that they point to their destination files properly. Broken hyperlinks are flagged in the FrontPage client Hyperlinks view. When a FrontPage-extended web is published, all hyperlinks in documents, including Office 2000 documents, are updated.
FrontPage Server Extensions security is extended to Office 2000 authors. To add a Word, Excel, or other Office document to a FrontPage-extended web, or open one from a FrontPage-extended web, an author must have authoring permissions on that web. After an Office document has been saved to a FrontPage-extended web, it can only be viewed by site visitors who have browsing permissions on that web.
FrontPage works with World Wide Web content by managing FrontPage-extended webs. A FrontPage-extended web contains all the Web pages, graphics, and other files and documents that make up a Web site. Authors create, delete, open, and close FrontPage-extended webs by using FrontPage on a client computer. A FrontPage-extended web can be stored on a remote or local Web server. Using FrontPage, FrontPage-extended webs can be copied from one Web server to another. You can also open and save pages from a FrontPage-extended web by using Microsoft Word, Excel, and other Microsoft Office 2000 applications.
Along with its files, scripts, graphics, and other content, a FrontPage-extended web has:
- A hyperlink map of all its files.
- A full-text index of all its pages.
- A persistent structure that authors can create and manipulate.
- An optional Web theme.
- A Tasks list containing the tasks needed to complete the FrontPage-extended web.
- Unique security settings.
Root webs and subwebs
A root web is a FrontPage-extended web that is the top-level content directory of a Web server or, in a multihosting environment, of a virtual Web server. It can have many levels of subdirectories containing its content. There can be only one root web per Web server or virtual Web server.
A subweb is a complete FrontPage-extended web that is a subdirectory of the root web or of another subweb. Subwebs are the FrontPage mechanism for breaking up a Web site so that different areas can be owned and maintained by different people or groups. Each subweb can have many levels of subdirectories.
By using subwebs, finer security granularity is automatic because each subweb maintains separate security settings. An additional benefit of using subwebs is potentially better performance, because the time required to recalculate hyperlinks is directly proportional to the number and size of the documents stored in a single web.
In earlier versions of FrontPage, subwebs could only be created directly below the root web. In FrontPage 2000, subwebs can be created at any level of your content structure, including below another subweb. In large organizations, webs are usually divided into areas that are owned and maintained by different groups in the organization. Being able to nest subwebs as deep as they like gives Webmasters the flexibility to set up their Web sites in a natural, intuitive way that matches the structure of the organization.
Even though subwebs appear below other webs in the Web server's file system and URL space, the content of a subweb is not included in its parent web. An author of a FrontPage-extended web does not automatically have permission to edit any of its subwebs. This separation of content is done by the FrontPage Server Extensions.
URLs of FrontPage-extended webs
FrontPage-extended webs can be implemented on a Web server and accessed by Web browsers as:
- Private domain names, such as www.mycompany.tld.
These are usually implemented as virtual servers on the same physical server machine that uses multihosting.
- A common or shared domain with private virtual servers, as in www.mycompany.myprovider.tld, where myprovider.tld is a shared domain and www.mycompany is a private virtual server.
- A URL on an Internet service provider's server machine, as in www.myprovider.tld/mycompany.
- A URL on an intranet server machine, as in http://frontpage (the root web) or http://frontpage/extensions (a subweb).
http://209.185.240.250/cgi-bin/linkrd?_lang=EN&lah=772cb7c163d80ba2a6e0208d6bb29297&lat=982285779&hm___action=http%3a%2f%2fcgi%2ezdnet%2ecom%2fslink%3f79862%3a5052569
When you publish a FrontPage-extended web, you make it available to site visitors for browsing from a Web server either on the Internet or on an intranet. The Internet and intranets typically use different methods of publishing.
Publishing to the Internet
In Internet publishing, the most common method is for an author to create a FrontPage-extended web on the client computer. Then, when the web is completed and tested, the author publishes it to an Internet service provider's Web server by using the Publish Web command in the FrontPage client. Authoring on a local Web server or file system is efficient because it does not require authors to be connected to an Internet service provider while they work on a FrontPage-extended web.

The Publish Web command copies the FrontPage-extended web from a source Web server (or from a client computer's file system) to a destination Web server in batch mode. By default, only new or changed pages and files are copied. Pages and files deleted from the source web are also deleted from the destination web.
When an author publishes a FrontPage-extended web using the Publish Web command, the home page is renamed, if necessary, to match the naming convention on the destination Web server. Also, all FrontPage-based components in the FrontPage-extended web are regenerated to take advantage of platform-specific functionality. For example, when a FrontPage-extended web is published to an IIS server containing Microsoft Index Server, any search forms in the web are configured to use the Index Server.
Publishing to an intranet
In intranet publishing, the most common method does not require the Publish Web command. Instead, an author works directly on a Web server on an internal network, which is typically used to share information within an organization. In this method, whenever a page is opened from the Web server and edited, the change is published to the intranet when it is saved in FrontPage.

http://209.185.240.250/cgi-bin/linkrd?_lang=EN&lah=772cb7c163d80ba2a6e0208d6bb29297&lat=982285779&hm___action=http%3a%2f%2fcgi%2ezdnet%2ecom%2fslink%3f79862%3a5052569
The FrontPage client system communicates with a Web server via WinSock and TCP/IP. Wizards and custom applications on the client computer communicate with the FrontPage client using OLE automation.

The FrontPage client communicates with the server extensions using HTTP, the same protocol Web browsers and Web servers use to communicate. FrontPage implements a remote procedure call mechanism on top of the HTTP POST request, so that the FrontPage client can request documents, update the Tasks list, add new authors, and so on.
The Web server sees POST requests addressed to the server extensions Common Gateway Interface (CGI) programs and directs those requests accordingly. FrontPage correctly communicates between client and server through proxy servers (firewalls).

FrontPage does not use the HTTP PUT request. As described in the HTTP specification, PUT sends a document to a Web server; however, few Web servers implement PUT. Therefore, the FrontPage client uses the universally implemented HTTP POST request for all communication with the server extensions.
For most Web servers, the FrontPage Server Extensions are accessed from the Web server using the Common Gateway Interface (CGI), the universal Web server extension mechanism. The implementation of CGI differs somewhat among Web servers and platforms. For example, most UNIX Web servers invoke a CGI extension by running it in a separate process, whereas Microsoft IIS on Windows NT supports Internet Server Applications Program Interface (ISAPI), a CGI-style communication interface that incurs less overhead.
Neil Randall is a contributing editor of PC Magazine
|