Using Abyss Web Server X1

Introduction

Abyss is a free-as-in-beer, neat, cross-platform, lightweight web server. It supports server-side scripting through CGI in Perl, PHP, or ASP, and features a remote web management interface that makes its configuration as easy as browsing a web site.

Setup

Here's how to set up Abyss on a bare Windows host, and add PHP and Perl. Note that as of March 2004, Abyss still doesn't support running as a service; It can only be launched at startup by adding a link to it in the user's StartUp directory, ie. run in user sessions

Abyss

  1. Download and run the Abyss package
  2. By default, the Abyss web server will bind to TCP 80, and its management application will listen on TCP 9999. If a process is already running on TCP 9999, click OK on the error message, then Console | Settings, choose a free TCP port, and let the console bind tho this new port
  3. The web-based console interface shows up in your web browser. Choose a login/password for the administrator account
  4. If you want the web server to bind to a port other than the default and standard TCP 80, click on the Server Configuration icon
  5. While still in the Server Configuration section, click on the Advanced... button

PHP

Manual install

  1. Download and unzip the PHP binary into eg. C:\PHP523
  2. Copy php.ini-recommended as php.ini
  3. In Abyss, connect to the web-based console, and click on Hosts > Configure
  4. Click on Scripting Parameters
  5. Check Enable Scripts Execution
  6. Press Add in the Interpreters table
  7. If you are using Windows NT, 2000, XP, 2003, or later, set Interface to FastCGI (Local - Pipes). If you are using Windows 95, 98, or ME, set Interface to CGI/ISAPI as PHP does not support the FastCGI interface on these old operating systems
  8. In the Interpreter field, press Browse..., go to the directory where you have installed PHP and click on php.exe if you have installed PHP 4 or php-cgi.exe if you have installed PHP 5
  9. Set Type to PHP Style
  10. Check Use the associated extensions to automatically update the Script Paths
  11. Press Add in the Associated Extensions table
  12. Enter php in the Extension field and press OK, and press OK again
  13. Press Add in the Custom Environment Variables table
  14. Enter REDIRECT_STATUS (with no leading or trailing spaces) in the Name field and 200 in the Value field and press OK
  15. Press OK in the Scripting Parameters dialog
  16. Back in the main menu, select Index Files
  17. Press Add in the Index Files table
  18. Enter index.php in the File Name field and press OK
  19. Press Restart to... restart the web server
  20. Create test.php in Abyss' htdocs directory:
    <?php
    phpinfo();
    ?>
  21. Aim your browser at http://localhost/test.php, and check that PHP loads, and that it's the right version (eg. "PHP Version 5.2.3")
  22. To change htdocs, ie. the location where the web server fetches document files, Host > General > Document Path

Installer

  1. Download and install the stand-alone binary to PHP. It's easier if you choose a shortname for the destination directory, eg. C:\PHP
  2. If prompted for the name of the web server to which you wish to add support for PHP, choose "None (or other web server), I will configure the web server manually and proceed."
  3. http://www.aprelium.com/abyssws/php.html

Adding extensions

PHP.INI

extension_dir =C:\Program Files\PHP5

In the Dynamic Extensions section, uncomment any line that starts with extension=php_

http://www.php.net/manual/en/install.windows.extensions.php

PECL

PECL is a repository for PHP Extensions, providing a directory of all known extensions and hosting facilities for downloading and development of PHP extensions.

Starting with PHP5, the PECL package is no longer part of the PHP package, so must be downloaded and installed separately:

  1. Download PECL 5.2.3 Win32 binaries [4,418Kb] - 01 June 2007
  2. Unzip the files in the PHP5 extension_dir (eg. C:\Program Files\PHP5)
  3. Edit php.ini to enable the extensions you need, and restart the web server

Switching from CGI to SAPI?

Perl

http://www.aprelium.com/abyssws/perl.html

Resources