Previous Chapter
Next Chapter
Table of Contents
Index

APPENDIX A
   RXML tags
APPENDIX B
   Gtext tags
APPENDIX C
    Header response lines
APPENDIX D
   HTTP response codes
APPENDIX E
   Migrating to Roxen
APPENDIX F
   Requirements
APPENDIX G
   Available modules

Appendices


APPENDIX A

RXML tags

All the RXML tags that are present in the basic distribution of Roxen are listed here in table format. For a complete description of every tag click on the tag name.

The Tags of the RoXen Macro Language (RXML).
Tagname Container Attributes
accessed No add, addreal, capitalize, cheat, factor, file, lang, lower, per, prec, reset, type, silent, since, upper
aconf Yes N/A
apre Yes href, prestates
autoformat Yes p
bofh No N/A
clientname No full
comment Yes N/A
countdown No time, presentation, special events
date No day, hour, minute, second and the date related attributes
define Yes name
doc Yes pre
dthought No N/A
else Yes N/A
formoutput No N/A
gclock No dial, offset, handcolor, handoffset
header No name, value
if Yes Conditionals, Modifiers
insert No cookie, cookies, file, fromword, name, nocache, variable, variables
language No full
modified No by, file, realfile and the date related attributes
otherwise No by and the date related attributes
pr No
quote No start, end
random Yes separator
referrer No N/A
remove_cookie No name
return No return code
set_cookie No name, realname, email, link, nolink
signature No name, realname, email, link, nolink
smallcaps Yes size, small, space
source No separator
tablify Yes N/A
user No name, realname, email, link, nolink
The date related attributes No type, lang, part, time, date, capitalize, lower, upper

APPENDIX B

Gtext tags

All the attributes of the Gtext tags that are present in the basic distribution of Roxen are listed here in table format. For a complete description of every attribute click on the attribute name.

The graphical text tag attributes
Attributes Modifiers
background=filename N/A
bevel=width pressed, magic
bg=color N/A
border=width,color N/A
bshadow=distance N/A
chisel N/A
crop N/A
fg=color N/A
fs N/A
ghost=distance, blurfactor, color N/A
glow=color,amount N/A
help N/A
href=url magic=[message]
maxlen=len N/A
nfont="font name" bold, italic, black, light
notrans N/A
opaque=opaque% N/A
outline=color,extra-radius N/A
quant=number_of_colors N/A
rotate=angle,[color] N/A
scale=number N/A
scolor=color N/A
size=xsize,[ysize] N/A
xsize=xsize,ysize=ysize N/A
scroll=width,steps,delay N/A
shadow=white-mix,[distance] N/A
spacing=spacing N/A
xspacing=spacing N/A
yspacing=spacing N/A
split N/A
taling=dir N/A
textbox=opaque%,[color,[pad]] N/A
textscale=color,color,color,color N/A
texture=filename N/A
turbulence=frequency,color;freq,col;freq,col N/A
xpad=Xpad% N/A
ypad=Ypad% N/A

APPENDIX C

Header response lines

When a browser sends a request for a file, the server returns a few lines reporting something about the result of the request. By using the RXML <header> tag you can extend or modify the header response lines. The table below presents some of the most common headers to send. The most interesting header is probably the WWW-Authenticate header, used when restricting access. For more information on the use of the header tag see <HEADER>. For in-depth information on headers you'll find several texts on this subject if you browse around the Internet.

Header name Description
Retry-After The Retry-After header field can be used with "502 Unavailable" to indicate how long the service is expected to be unavailable
WWW-Authenticate Must be included with a "401 Unauthorized" response, like this: <header name=WWW-Authenticate value="Basic; Realm=any">. The realm attribute is required for all access authentication schemes which issue a challenge (i.e. tells the browser to obtain a user name and a password). The realm value, in combination with the root URL of the server being accessed, will be presented to the user.
Location Must be included with a redirect of any kind, like this: <header name=Location value=URL>.
Content-Language The language of the document
Content-Encoding The encoding of the document
Content-Type The content type, usually text/html.
Derived-From Indicates which document this document is derived from.
Expires After the date indicated by this header, the document must be refetched from the server.

APPENDIX D

HTTP response codes

When a http server has received and treated a request a response code is transferred back to the client. This table contains the possible responses the server can send.

Code Meaning
200 Document follows The request has been fulfilled and an entity corresponding to the requested resource is being sent in the response.
201 Created The request has been fulfilled and resulted in a new resource being created.
202 Accepted The request has been accepted for processing, but the processing has not been completed.
203 Provisional information The returned metainformation in the Entity-Header is not the definitive set as available from the origin server, but is gathered from a local or a third-party copy.
204 No Content The server has fulfilled the request but there is no new information to send back. If the client is a user agent, it should not change its document view.
300 Moved The requested resource is available at one or more locations and a preferred location could not be determined via content negotiation.
301 Moved permanently Requires the \QLocation' header, see the <head> tag below. The requested resource has been assigned a new permanent URI and any future references to this resource must be done using the returned URI.
302 Moved temporarily Requires the \QLocation' header, see the <head> tag below. The requested resource resides temporarily under a different URI. Since the redirection may be altered on occasion, the client should on future requests from the user continue to use the original Request-URI and not the URI returned in the URI-header field and Location fields.
304 Not modified The document has not been modified
400 Bad Request The request had bad syntax or was inherently impossible to satisfy. The client is discouraged from repeating the request without modifications.
401 Access denied The request requires user authentication. The response must include a WWW-Authenticate header field containing a challenge applicable to the requested resource. The client may repeat the request with a suitable Authorization header field. This might, for instance, be used inside a <deny user=...> tag.
402 Payment Required The user has to pay you to get the information.
403 Forbidden The request is forbidden because of some reason that remains unknown to the client.
404 No such file or directory The server has not found anything matching the Request-URI. No indication is given of whether the condition is temporary or permanent.
405 Method not allowed The method specified in the Request-Line is not allowed for the resource identified by the Request-URI.
408 Request timeout n/a
409 Conflict n/a
410 This document is no more The requested resource is no longer available at the server and no forwarding address is known.
500 Internal Server Error n/a
501 Not implemented n/a
502 Service Unavailable n/a
503 Gateway Timeout n/a

APPENDIX E

Migrating to Roxen

Roxen can take care of many of the special features of other well-known servers. Basically it is quite painless to switch to Roxen. Below you'll find the common special features of other servers and how Roxen treats them.

Image maps

NCSA Image map tip

By adding a redirect from /your_cgi-bin_dir/imagemap/ to /, Roxen will handle all files using the NSCA image map script internally. This means that you won't have to change any links to get your old image maps to work with Roxen.

Server Side Includes

Roxen is compatible with NCSA/Apache style Server Side Includes, SSI. However, we suggest that you rewrite your files to take advantage of Roxen's native features instead, features that can accomplish the same things, but faster, mainly the various RXML commands.

By default, support for the execute script command <!--#exec --> is turned off, while the others are on. This is controlled in the Main RXML parser.

Server side includes are internally treated like RXML tags.

CGI

All your existing CGI scripts should work but be sure to read the section on the CGI script module.

APPENDIX F

Requirements

Memory

To run Roxen you should have at least 32 MB of real memory available.

CPU

At least a 486/66 or equivalent (e.g. a Sun4/400) is recommended to experience acceptably smooth performance. This depends heavily on the amount of traffic you need to take care of. At Idonex we have a 512 kbps connection to the Internet. Running Roxen on a Sun Sparcstation 5 under Solaris 2.x we can theoretically serve around 3 million people per day. The limit is the operating system network routines, not Roxen itself. a

Hard disk space

The binary distribution of Roxen requires around 8 MB of disk space, and the full source version approximately 16 MB. While compiling you will probably need about another 20 MB

Software requirements

Operating Systems

Most Identical code is running on all supported platforms. Challenger 1.2. runs and has been in-house tested on the following Unix Operating Systems:

  • Solaris 2.5 & 2.6 (SPARC & Intel x86)
  • Digital UNIX 4.0
  • AIX 4.2.1
  • IRIX 6.3
  • FreeBSD 2.2.2
  • HP-UX 10.20
  • Linux Red Hat 4.2 (Intel x86)
It has been alpha tested on additional platforms, and is likely to run on others as well.

APPENDIX G

Available modules

BOFHLocation
CGI executable supportLocation, file extension
Client loggerFirst try
Config tab listLocation, parser
Configuration interfaceLocation
SSL-proxyFirst try, proxy
Content-typesContent-type
Deep thoughtParser
Directory parsingDirectory
Explicit clockLocation
FastCGILocation, file extension
Fast directory parsingDirectory
File systemLocation
FTP gatewayLocation
Gopher gatewayLocation
Graphics textLocation, parser
.htaccess supportSecurity, last try, first try
HTTP-proxyLocation
HTTP-relayLast try, first try
Index filesDirectory
Indirect hrefParser
IP-less virtual hosting...
ISMAP image-mapsFile extension
LanguageURL, directory
Logging disablerLogger
Main RXML parserLocation, parser, file extension
Mirror filesystemLocation
Mirror server
Pike script supportFile extension
Redirect module v2.0First try
Secure file systemLocation
TablifyParser
Tab listParser
TimestampExtension
User data base and securityAuthorization
User file systemLocation
User loggerLocation
WAIS gatewayLocation
Previous Chapter
Next Chapter
Table of Contents
Index