
  gW3S 1.0 Beta 6
  ===============
  
  1 ............ What?
  2 ............ Why?
  3 ............ How?
  4 ............ Who?
  5 ............ License/Distribution
  
  1. WHAT?
  ~~~~~~~~
  gW3S - the GRiP Web Server is a small web server for the Amiga
  range of computers, written in ARexx.
  
  It doesn't have complete HTTP/1.0 support, neither does
  it have full/real CGI support. However, it does have the
  following:
  
   · HTTP/1.0 200 OK
   · HTTP/1.0 404 Not Found
   · Rudimentary request logging
   · Built-in directory listing (for dirs without an "index.html")
   · Embedded ARexx command execution
   · Embedded Execution of external ARexx scripts (with QueryString as argument)
   · Query-String/URL unescaper
   · Complete parsing of external ARexx CGI scripts (.xgi files)
   · Fancy Files (support for unsafe chars in file names)
   · An external config file
   · A config tool as a standalone executable (with ARexx source available of course)
  

  2. WHY?
  ~~~~~~~
  Because I wanted to. Apache is too big for my little old Amiga,
  and ARexxWebServer by Casey Halverson wasn't good enough -- although
  it was this script that initially inspired me. I also got a few
  ideas from Mikael "DiskWasher" Engström. I've also gotten help and
  suggestions from Cato Hagen and Peter Gordon (cheers!).
  
  
  3. HOW?
  ~~~~~~~
    Installation
    ~~~~~~~~~~~~
    1) Copy the script (w3s.rx) to wherever you want it

    2) Configuration
      a) Copy the file "w3sadm" to where you want it (I'd
         recommend you to put it somewhere in your path)
      a) Copy the config file ("w3s.conf") to env:
         The config file MUST ALWAYS BE CALLED "w3s.conf"!
      b) Run w3sadm and edit the config to your liking
      c) SAVE the config (important!)
 
     3) Configure your TCP/IP stack. Here's how you do it in AmiTCP/Genesis:
       a) Find the file "inetd.conf" (usually in AmiTCP:db/).
          Add the following line:
          http   stream   tcp   dos   bin   -   c:rx   path:to/webserver/script/w3s.rx
       b) In the file "services", find and edit line that contains "80/tcp":
          http              80/tcp    gW3S

    4) Start your TCP/IP Stack
    
    5) Surf to http://localhost/
    
    
    Inline ARexx
    ~~~~~~~~~~~~
    In your HTML document, you can have inline ARexx commands.
    They have to be on a separate line and always on this format:
    
     <?rx arexx_command ?>
     
    For example, if you want to print the system date and time:
    
     <?rx say 'Local time: 'date()' 'time() ?>
   
   If you want to execute an external ARexx script, use this syntax:
   
     <?rx execute('path:to/your/arexx.script') ?>
   
   If you're executing an external ARexx script and you have a QueryString
   from a form or similar, this will be passed as an argument to the script.
   You'll have to do all the parsing yourself, however.
   
   A very simple parser could look like this:
  
     /* top of script */ 
     PARSE ARG 'variableA=' varA '&variableB=' varB
  
   This will give the contents of "variableA" in "varA" and "variableB" in "varB".
     
   
   XGI Scripts
   ~~~~~~~~~~~
   As of Beta 3, gW3S can execute a whole ARexx script on it's own, if it's
   got the extension ".xgi". Just put your scripts in your normal HTML directory
   and link to them as usual. As long as they have the ".xgi" extension they
   will be parsed.
     

   4. WHO?
   ~~~~~~~
   Author: Carl Svensson
     Home: http://carls.1av10.nu/
     Mail: carls@kajen.com   
   
   
   5. License/Distribution
   ~~~~~~~~~~~~~~~~~~~~~~~
   gW3S is FREEWARE. This means that it's free to use and distribute
   as long as the script remains intact and as long as the copyright
   statement in the script isn't changed.



