{"id":175,"date":"2000-11-23T18:09:44","date_gmt":"2000-11-24T02:09:44","guid":{"rendered":"http:\/\/www.jeffcarl.com\/?p=175"},"modified":"2020-07-08T19:04:32","modified_gmt":"2020-07-09T02:04:32","slug":"hosting-frontpage-sites-on-unix-servers-dealing-with-the-great-satan-server-extensions","status":"publish","type":"post","link":"https:\/\/www.jeffcarl.com\/index.php\/2000\/11\/23\/hosting-frontpage-sites-on-unix-servers-dealing-with-the-great-satan-server-extensions\/","title":{"rendered":"Hosting FrontPage Sites on Unix Servers &#8211; Dealing with the Great Satan of Server Extensions"},"content":{"rendered":"\n<p class=\"has-medium-font-size\"><strong>By Jeffrey Carl<\/strong><\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"alignright\"><img loading=\"lazy\" decoding=\"async\" width=\"350\" height=\"109\" src=\"http:\/\/www.jeffcarl.com\/wp-content\/uploads\/2020\/04\/bwatch.gif\" alt=\"Boardwatch Magazine\" class=\"wp-image-22\"\/><figcaption>Boardwatch Magazine, November 2000<\/figcaption><\/figure><\/div>\n\n\n\n<p class=\"has-background has-light-gray-background-color\"><em>Boardwatch Magazine was the place to go for Internet Service Provider industry news, opinions and gossip for much of the 1990s. It was founded by the iconoclastic and opinionated Jack Rickard in the commercial Internet&#8217;s early days, and by the time I joined it had a niche following but an influential among ISPs, particularly for its annual ranking of Tier 1 ISPs and through the ISPcon tradeshow. Writing and speaking for Boardwatch was one of my fondest memories of the first dot-com age.<\/em><\/p>\n\n\n\n<p>Ever since a version of FrontPage started getting bundled in with Microsoft Office 2000, FrontPage has quickly become the web site design tool of choice for people who enjoy being lectured by animated paper clips. If your hosting environment is Linux or *BSD, then FrontPage needs to be understood and dealt with.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">FrontPage and How it Works<\/h2>\n\n\n\n<p>FrontPage is a simple GUI tool which automates the things that most basic web designers are looking for these days, including graphical page design, publishing their sites and CGI-type actions (forms, dynamic pages, etc.). Throughout the rest of this column, I don\u2019t want to disparage what the creators of FrontPage have made \u2013 a truly&nbsp;<em>easy, user-friendly<\/em>&nbsp;program for the design of simple to very complex web sites \u2013 a real achievement.<\/p>\n\n\n\n<p>But, for a FrontPage-created site to take use of all the easy-to-create \u201call-singing, all-dancing\u201d features that make it such a hit with people who wouldn\u2019t know an HTML tag if it crawled up and bit them, the FrontPage Server Extensions (FPSE) must be present on the hosting server. The FPSE are essentially Microsoft-built proprietary CGIs executed over HTTP \u2013 designed for Windows NT and Microsoft IIS, but ported to Unix and supported on Microsoft\u2019s behalf by Unix porting house Ready-to-Run Software (RTR). This is where the trouble starts.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Can You Support FrontPage on a Freenix?<\/h2>\n\n\n\n<p>Supporting FrontPage on Unix is both a help and a hindrance to ISPs. It allows you to host sites for clients using FrontPage \u2013 and this faction is rapidly growing. It can provide you with a competitive advantage over ISPs that don\u2019t support FrontPage sites.<\/p>\n\n\n\n<p>The extensions are currently available for a number of platforms including FreeBSD and Linux (for x86 architectures only), and for a number of webservers including Apache, NCSA, Netscape and Stronghold (although only Apache will be discussed in this column). I\u2019m sure that RTR has done a herculean task porting these server extensions to Unix, but the fact remains that this software is poorly documented and frequently difficult to troubleshoot.<\/p>\n\n\n\n<p>The FrontPage extensions for Unix don\u2019t allow you to support the full range of capabilities of FrontPage-designed sites. Active Server Pages (ASP) aren\u2019t natively handled with the FPSE for Unix, and neither is native ActiveX nor ODBC\/Microsoft Access database connectivity.&nbsp;<\/p>\n\n\n\n<p>You can, fortunately, look for outside support. Software vendor Chili!Soft (<em>www.chilisoft.com\/allaboutasp\/<\/em>) offers a Unix-native commercial ASP package, Halcyon (<em>www.halcyonsoft.com\/products\/iasp.asp<\/em>) offers a Java-based ASP commercial package, and&nbsp;mod_perl&nbsp;(<em>perl.apache.org<\/em>) with the Apache::ASP (<em>www.nodeworks.com\/asp\/<\/em>) module provides a free, Perl-based solution. Commercial ODBC resources are available at&nbsp;<em>www.openlinksw.com<\/em>, and open-source resources can be found at&nbsp;<em>www.jepstone.net\/FreeODBC<\/em>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">The Pitfalls of FrontPage Extensions<\/h2>\n\n\n\n<p>Unfortunately, offering FPSE\/Unix commits you to supporting what is, frankly, some occasionally very frustrating software. While security problems with FP-administered sites have decreased, it\u2019s still not suitable for the truly paranoid (a full discussion would take up this whole magazine). The&nbsp;author.exe&nbsp;program that is part of the FPSE seems, on Unix, to eat up an unseemly amount of CPU cycles while it\u2019s running. The&nbsp;.htaccess&nbsp;files that FrontPage installs for each of the directories in a FrontPage-enabled site may interfere with the server administrator\u2019s security policies. And, in my experience, the FPSE will occasionally&nbsp;<em>just stop working<\/em>, with a reinstall required.<\/p>\n\n\n\n<p>If you can\u2019t find the free support resources you need, you can of course contact RTR for phone support ($245 per incident) or e-mail support ($195 per incident). And, if you&nbsp;<em>don\u2019t<\/em>&nbsp;support it, FrontPage users are advised in the FrontPage\/Unix FAQ to \u201cfind another ISP\u201d (<em>http:\/\/www.rtr.com\/fpsupport\/faq2000g.htm#7newISP<\/em>).&nbsp;<\/p>\n\n\n\n<p>So much for \u201calternatives.\u201d And the customer pressure to host FrontPage sites is quickly increasing.&nbsp;<\/p>\n\n\n\n<p>Before I go on to discuss how to support FrontPage on Unix, I should mention that there&nbsp;<em>is<\/em>&nbsp;another option \u2013 set up a server running Windows NT or Windows 2000. This has its own set of problems and complications (which could take up a book, not a column), but at least the FPSE work flawlessly. After two years and a multitude of problems supporting 50 or so FrontPage users on Red Hat Linux and FreeBSD, and seeking more scalability without headaches, I shamefully admit that this is what I ultimately did. Unfortunately,&nbsp;<em>I think this is what Microsoft was hoping for all along<\/em>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Getting the FrontPage Extensions<\/h2>\n\n\n\n<p>For a detailed understanding of the installation process and some help with common problems, first visit the Server Extensions Resource Kit (\u201cSERK\u201d) page for Unix installation (<em>www.rtr.com\/fpsupport\/serk4.0\/inunix.htm<\/em>). For a full list of the files included in an installation and their permissions structures, see&nbsp;<em>www.rtr.com\/fpsupport\/serk4.0\/apndx01.htm<\/em>.<\/p>\n\n\n\n<p>If you\u2019re installing Apache on the server for the first time, you can use the&nbsp;apache-fp&nbsp;package (<em>www.westbend.net\/~hetzels\/apache-fp\/<\/em>), available as a Linux RPM or through the FreeBSD ports collection, which integrates an Apache distribution with the Unix FPSE. If you\u2019re installing on an existing Apache setup, go directly to RTR Software\u2019s FPSE\/Unix homepage (<em>http:\/\/www.rtr.com\/fpsupport\/<\/em>). Download the FrontPage 2000 SR 1.2 extensions for your platform (they\u2019re backward-compatible with FP \u201997 and \u201998 clients), which come in a zipped or GNU-zipped tar file, as well as the shell scripts&nbsp;fp_install.sh&nbsp;and&nbsp;change_server.sh.&nbsp;<\/p>\n\n\n\n<p>The extensions tarball will be named like&nbsp;fp40.[osname].tar&nbsp;(version 4 is the FP 2000 extensions; version 3 is for FP \u201998). The&nbsp;fp_install.sh&nbsp;script converts the results of the&nbsp;uname -a&nbsp;command to a&nbsp;$machine&nbsp;variable, and won\u2019t install if the extensions tarball name doesn\u2019t match the&nbsp;$machine&nbsp;name.<\/p>\n\n\n\n<p>For a long time, it was necessary to get the extensions to install on FreeBSD by \u201chacking\u201d the script. In this case, adding the line:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">FreeBSD*)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;machine=\"bsdi\" ;;<\/pre>\n\n\n\n<p>as line 70 of the&nbsp;fp_install.sh&nbsp;script would get the BSDI extensions to install. This has been fixed if you download the most recent versions of the software.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Installing Unix FrontPage Extensions<\/h2>\n\n\n\n<p>The default install is into&nbsp;\/usr\/local\/frontpage\/version40, or in the directory of your choice, although it will create a link to the above. The installation script installs the FPSE, an HTML version of the SERK, the command-line administration tool (fpsrvadm.exe), the web-based administration tools (in the&nbsp;admcgi&nbsp;directory), the Apache-FP patch, and assorted server and site administrator support files.&nbsp;<\/p>\n\n\n\n<p>If you have already installed the&nbsp;version30&nbsp;extensions, the script will move its&nbsp;currentversion&nbsp;symbolic link to point to the&nbsp;version40&nbsp;directory while leaving the older version intact (actually a good choice, and one that many other software packages might adopt!). The installation script will also prompt you to upgrade the \u201cstub extensions\u201d (located inside each FrontPage-enabled host\u2019s document root, linking to the central extension executables) for each virtual host which has had the older stub extensions installed.<\/p>\n\n\n\n<p>While installing, note that each site\u2019s FrontPage username and password (used for administering their site through the FrontPage client) have no relation to their Unix username and password. For security\u2019s sake (unless the users will be administering their sites through secure server access), it is advisable to make these username\/passwords different from their Unix user\/password counterparts. Note that if each of your virtual hosts are associated with different Unix users\/groups, those \u201csubwebs\u201d should be owned by the Unix user\/group of the site maintainer, or they will be unable to administer their site properly.<\/p>\n\n\n\n<p>Next, run the&nbsp;change_server.sh&nbsp;script to automatically&nbsp;<em>replace<\/em>&nbsp;the existing&nbsp;httpd&nbsp;daemon with a FPSE-supplied one which has the FrontPage patch\/module installed (with only the&nbsp;mod_frontpage&nbsp;module and a few other basic modules compiled in; it moves the old one to&nbsp;httpd.orig). The script further creates a&nbsp;suidkey&nbsp;file, used when the FPSE exercise their suid (\u201cset user ID\u201d) bit to make root-level modifications. It also prompts you to upgrade any virtual hosts if necessary.<\/p>\n\n\n\n<p>The Apache version used with the current extensions (as of this writing) is 1.3.12. Note, however, that using an older version of the extensions may replace your Apache daemon with an older Apache daemon. If you would like to compile your own Apache daemon instead of using the&nbsp;change_server.sh-installed one (recommended), you may wish to download the Improved Mod_Frontpage (<em>home.edo.uni-dortmund.de\/~chripo\/<\/em>) and then follow the installation\/compilation directions listed at&nbsp;<em>www.rtr.com\/fpsupport\/serk4.0\/inunix.htm#installingtheapachepatch<\/em>. If the patch fails, check out the info at&nbsp;<em>home.edo.uni-dortmund.de\/~chripo\/faq.asp<\/em>).&nbsp;<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Administering FrontPage Sites<\/h2>\n\n\n\n<p>For the server administrator, the command-line tool&nbsp;fpsrvadm.exe&nbsp;is your primary interface. This tool allows you to install or uninstall FPSE for virtual hosts, set authoring options for them, set directory\/executable permissions,&nbsp;chown&nbsp;files, and create or merge subwebs. Running&nbsp;fpsrvadm.exe&nbsp;without any arguments brings you to a GUI-like interface; or, you can run the program directly with command-line options which are detailed at&nbsp;<em>www.rtr.com\/fpsupport\/serk4.0\/adfpsr_3.htm<\/em>.<\/p>\n\n\n\n<p>When adding FPSE to virtual hosts, choose Apache-FP for \u201cserver type\u201d unless you have chosen not to install the FrontPage patch. During a host installation, \u201cstub extensions\u201d will be installed for the selected host, and its executable directories aliased appropriately.<\/p>\n\n\n\n<p>Through&nbsp;fpsrvadm.exe, you can also run a \u201ccheck and fix\u201d option on existing hosts. While this option won\u2019t tell you anything other than whether the extensions are installed or not (and which version), it can frequently be a valuable tool. When running a check or installing new virtual hosts, be sure to specify the port number (e.g.,&nbsp;<em>www.somehost.com:80<\/em>) or it won\u2019t be recognized.<\/p>\n\n\n\n<p>If e-mailing FrontPage forms fails, be sure to edit your&nbsp;\/usr\/local\/frontpage\/we80.cnf&nbsp;file and add the line:&nbsp;<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">SendMailCommand:\/usr\/sbin\/sendmail %r<\/pre>\n\n\n\n<p>\u2026replacing the above path with the correct path to your MTA of choice. Otherwise, FrontPage forms will not be able to send e-mail. I\u2019m not sure why this isn\u2019t part of the default installation, but it isn\u2019t. Also, note that frequently users may use FTP rather than use their FrontPage client to upload files to their site. A common problem is that if an entire directory is uploaded by the user via FTP, it may overwrite the FPSE located in that directory, and it may be necessary to reinstall the FPSE for that host.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Documentation and Support<\/h2>\n\n\n\n<p>Your official first stop for documentation will be the \u201cofficial\u201d version of the SERK at&nbsp;<em>officeupdate.microsoft.com\/frontpage\/wpp\/serk\/<\/em>. The SERK is required reading for any sysadmin to understand FrontPage, especially those with training in Unix and not Microsoft systems. Unfortunately, the FP 2000 SERK (the FP 98 SERK did not share this problem) is the first Unix documentation package I have ever encountered which&nbsp;<em>does not even mention<\/em>&nbsp;the terms \u201cproblem\u201d or \u201ctroubleshooting.\u201d<\/p>\n\n\n\n<p>For real-world administrators, your un-official first stops will be the RTR FrontPage 2000 FAQ (<em>www.rtr.com\/fpsupport\/faq2000.htm<\/em>) and discussion board (<em>www.rtr.com\/fpsupport\/discuss.htm<\/em>). While the discussion boards aren\u2019t always much help, the FAQ is&nbsp;<em>absolutely essential<\/em>, answering most of the common questions that can make the difference between supporting FrontPage and chewing the Ethernet cable off the server in frustration. I\u2019m not sure why elements of the FAQ haven\u2019t been integrated with the SERK (by the way, would a few&nbsp;man&nbsp;pages be too much to ask?). It is essential that, because of how disorganized much of the FrontPage\/Unix documentation is, you should scour&nbsp;<em>every<\/em>available resource before considering a problem unsolvable.<\/p>\n\n\n\n<p>Part of my problem with the Unix FPSE is that they use Microsoft\u2019s seemingly proprietary way of describing things, which makes life difficult for Unix administrators. For example, the collections of a user\u2019s web pages are&nbsp;<em>normally<\/em>&nbsp;known as a \u201cweb site,\u201d which has a \u201cdocument root\u201d and may be a \u201cvirtual host.\u201d In the Front Page Mirror Universe, the evil Captain Kirk has a goatee, and this is known as a \u201cFrontPage web,\u201d with a \u201croot web\u201d and \u201cvirtual webs.\u201d To use my favorite acronym, \u201cWTF?\u201d<\/p>\n\n\n\n<p>There is a newsgroup available at&nbsp;<em>microsoft.public.frontpage.extensions.unix<\/em>. However, a quick perusal of this newsgroup\u2019s messages over the past several months shows that the postings appear to be mainly problems and questions \u2013 without many answers. There was a FrontPage\/Unix mailing list (<em>fpunix@inr.net<\/em>), but as of this writing&nbsp;<em>majordomo@inr.net<\/em>&nbsp;no longer seems to be responding for subscriptions. I recommend searching Google (<em>www.google.com<\/em>) for FrontPage web resources.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Conclusions<\/h2>\n\n\n\n<p>Supporting FrontPage websites on Freenixes is very possible, and for basic purposes, it works very well. However, be prepared to do your homework, and know that it may not be easy. Administering a web server always requires serious research and work; depending on your tastes, dealing with FrontPage on Unix may require&nbsp;<em>too<\/em>&nbsp;much.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>By Jeffrey Carl Boardwatch Magazine was the place to go for Internet Service Provider industry news, opinions and gossip for much of the 1990s. It was founded by the iconoclastic and opinionated Jack Rickard in the commercial Internet&#8217;s early days, and by the time I joined it had a niche following but an influential among &hellip; <a href=\"https:\/\/www.jeffcarl.com\/index.php\/2000\/11\/23\/hosting-frontpage-sites-on-unix-servers-dealing-with-the-great-satan-server-extensions\/\" class=\"more-link\">Continue reading <span class=\"screen-reader-text\">Hosting FrontPage Sites on Unix Servers &#8211; Dealing with the Great Satan of Server Extensions<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":22,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[8,66],"tags":[26,38,35],"class_list":["post-175","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-boardwatch-writing","category-tech","tag-apache","tag-microsoft","tag-webhosting"],"jetpack_featured_media_url":"https:\/\/www.jeffcarl.com\/wp-content\/uploads\/2020\/04\/bwatch.gif","_links":{"self":[{"href":"https:\/\/www.jeffcarl.com\/index.php\/wp-json\/wp\/v2\/posts\/175","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.jeffcarl.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.jeffcarl.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.jeffcarl.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.jeffcarl.com\/index.php\/wp-json\/wp\/v2\/comments?post=175"}],"version-history":[{"count":4,"href":"https:\/\/www.jeffcarl.com\/index.php\/wp-json\/wp\/v2\/posts\/175\/revisions"}],"predecessor-version":[{"id":298,"href":"https:\/\/www.jeffcarl.com\/index.php\/wp-json\/wp\/v2\/posts\/175\/revisions\/298"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.jeffcarl.com\/index.php\/wp-json\/wp\/v2\/media\/22"}],"wp:attachment":[{"href":"https:\/\/www.jeffcarl.com\/index.php\/wp-json\/wp\/v2\/media?parent=175"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.jeffcarl.com\/index.php\/wp-json\/wp\/v2\/categories?post=175"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.jeffcarl.com\/index.php\/wp-json\/wp\/v2\/tags?post=175"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}