Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Contact Us
Online Help
Domain Status
Man Pages

Virtual Servers

Topology Map

Server Agreement
Year 2038

USA Flag



Man Pages

Manual Reference Pages  -  INTERCHANGE (1)

.ds Aq ’


interchange - an e-commerce and general HTTP database display system



interchange [--options] [file]




Interchange is a database access and retrieval system focused on e-commerce. It allows customers to select items to buy from catalog pages. The program tracks user information in sessions and interacts with an HTTP server through sockets.

Interchange has many, many, functions and features; they are too numerous to describe in this venue. Complete information can be found at its web site:


Interchange requires Perl 5.8.0 or higher; more information on Perl can be seen at:



Interchange uses the Getopt::Long module, and most options will be recognized if they uniquely identifiable. The canonical forms are:
-a, --add Add a catalog to the system. Information taken from the input file (or standard input). Implies reconfig=catalog. Example:

  echo "Catalog simple /catalogs/simple /simple.cgi" | bin/interchange -a

The information is in the form of a standard Interchange catalog line, and must be in the single-line format.

--runjobs=catalog[=job] Run a jobs group which is a series of files in a directory with the name corresponding to the job. For instance, if you set up a directory called weekly in your pages directory for the catalog foundation, you can run those files with:

        interchange --runjobs=foundation=weekly

Files ending in .html (or whatever HTMLsuffix is for that catalog) are skipped. It is not tree-recursive — directories are ignored.

Results can be emailed to an address if you specify --email=address, and they will be put in the jobs log file.

Alternatively jobs can be specified with --jobgroup=jobname <B>beforeB> the --runjobs option. In other words, this will work:

        interchange --jobgroup=weekly --runjobs=foundation

This will NOT work:

        interchange --runjobs=foundation --jobgroup=weekly

-d dir, --dir=dir Directory for VendRoot. This is where the Interchange configuration file will be looked for (if not redefined with -f), and where the log file will go (if not redefined with the ErrorFile directive).
-e name, --exclude=name Exclude catalog from this startup.
-email=address Email address to email jobs results to.
-f file, --config=file Configuration file to use (default is interchange.cfg in VendRoot).
-h, --help Display help on command line options.
-i, --inetmode Run with internet-domain socket only. Normally Interchange runs with both UNIX- and internet-domain sockets (except on Windows).
--jobgroup=job Sets the job for --runjobs if that is not included in the --runjobs call. MUST precede the --runjobs entry on the command line.

        interchange --jobgroup=weekly --runjobs=foundation

See --runjobs for an explanation of what this does.

--kill [signal] By default, kills the server ungracefully with signal KILL (9, usually). The optional signal will be sent instead if supplied.
-q, --quiet Suppress informational messages on startup. Only errors are shown.
--reconfig=name Cause only catalog name to re-read its configuration.
--remove=catalog Remove a catalog from operation; any future requests will get a not-found message.
-r, --restart Stop and restart the server. This may take a long time if many catalogs are in use, and will temporarily take the system offline. If you want to change a UserTag, use the --add option instead.
--serve This is the default if no mode options (--reconfig, --kill, --restart, etc.) are supplied.
--stop Stop server gracefully with a TERM signal.
-t, --test Report problems with config files; causes a complete configuration of the Interchange server but no server start.
-u, --unix Run with unix-domain socket only. Normally Interchange runs with both UNIX- and internet-domain sockets. This will not work on Windows.
-v, --version Display program version.
--DEBUG=1 Set to true value to run foreground in debug mode. It is normal to receive warnings about various things if you run with perl -w.
Directive=value Set a Interchange global directive upon start (or --restart). Example:

        interchange SocketPerms=0666

This will start the server and override the default of SocketPerms or the value set in interchange.cfg for this instance only. Any --restarts must re-specify the directive if it is still to have that value.

name:Directive=value Set a Interchange directive for catalog name upon start (or --restart). Example:

        interchange simple:VendURL="http://localhost/cgi-bin/simple"

This will start the server and override the default of VendURL for the value set in catalog.cfg for this instance only. Any --restarts must re-specify the directive if it is still to have that value.


compile_link(1), config_prog(1), configdump(1), dump(1), expire(1), expireall(1), localize(1), makecat(1), offline(1), restart(1), update(1),


Interchange comes with ABSOLUTELY NO WARRANTY. This is free software, and you are welcome to redistribute and modify it under the terms of the GNU General Public License.


    Copyright (C) 2002-2010 Interchange Development Group
    Copyright (C) 1995-2002 Red Hat, Inc.
    All rights reserved except those granted in the license.


Mike Heins is the primary author of Interchange.

The Interchange Development Group is:

Dan Browning David Kelly Davor Ocelic Ethan Rowe Gert van der Spoel Greg Hanson Jon Jensen Jonathan Clark Kevin Walsh Mark Johnson Mike Heins Paul Vinciguerra Peter Ajamian Stefan Hornburg (aka Racke), captain Randy Moore Ron Phipps Ton Verhagen

Please do not contact the authors directly for help with the system. Use the Interchange mail list:

Information on subscribing to the list, as well as general information and documentation for Interchange is at:


Original author of Vend, ancestor to Minivend and Interchange, was Andrew Wilcox <>. Interchange could never have come into being without him. Interchange was based on Vend 0.2, with portions from Vend 0.3; both were produced in 1995.

Contributions to Interchange have been made by:

    Andreas Koenig           Jason Holt
    Bill Carr                Jason Kohles
    Bill Dawkins             Javier Martin
    Bill Randle              Jeff Carnahan
    Birgitt Funk             Jeff Nappi
    Bob Jordan               Jochen Wiedmann
    Brev Patterson           Jose\k:'MX Revuelto
    Brian Bullen             Jure Kodzoman
    Brian Kosick             Jurgen Botz
    Bruce Albrecht           Keiko
    Cameron Prince           Keith Oberlin
    Chen Naor                Kim Lauritz Christensen
    Christian Mueller        Larry Leszczynski
    Christopher Miller       Marc Austin
    Christopher Thompson     Mark Stosberg
    Dan Busarow              Massimiliano Ciancio
    Dan Helfman              Matthew Schick
    Daniel Thompson          Michael McCune
    Dave Wingate             Michael Wilk
    David Adams              Mike Frager
    Dennis Cronin            Neil Evans
    Don Grodecki             Nelson Ferrari
    Ed LaFrance              Raj Goel
    Frank Bonita             Ray Desjardins
    Frederic Steinfels       Shozo Murahashi
    Gunnar Hellekson         Sonny Cook
    Hamish Bradick           Tim Baverstock
    Hans-Joachim Leidinger   Tom Friedel
    Heinz Wittenbecher       Tommi Laberno
    Hiroyuki Cozy Kojima     Troy Davis
    Ignacio Lizara\k:'         Victor Nolton
    Jack Tsai                William Dan Terry
    and many others

and, of course, the entire Perl team without whom Interchange could not exist.


Hey! <B>The above document had some coding errors, which are explained below:B>
Around line 1066: Non-ASCII character seen before =encoding in ’Jose\k:'Assuming ISO8859-1
Search for    or go to Top of page |  Section 1 |  Main Index

perl v5.20.3 INTERCHANGE (1) 2016-04-04

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with manServer 1.07.