yaws

Langue: en

Version: 314987 (ubuntu - 07/07/09)

Section: 1 (Commandes utilisateur)

NAME

yaws - yet another webserver

SYNOPSIS

yaws [OPTIONS]

DESCRIPTION

Yaws is fast lightweight webserver. It can run as daemon or in interactive mode where it is possible to directly interact with the webserver. Yaws is particularly good at generating dynamic content. See the user docs for more information on that topic.

DEAMON/SERVER options

-i | --interactive
Interactive mode. This will start yaws in interactive mode with an erlang prompt. All error_logger messages will be written to the tty as well in this mode. Use this when developing yaws code.
-w | --winteractive
Cygwin inteactive mode (werl) --daemon Daemon mode. This will start yaws as a daemon.
--heart
This will cause the yaws system to be automatically restarted in case it should crash. This switch also require the --daemon switch to be present.
--debug
Debug mode. This will produce some auxilliary error output for some error conditions. It will also start the otp sasl lib for additional error printouts.
--conf file
Use a different configuration file than the default. The default configuration file when running as root is /etc/yaws.conf. When running as a non priviliged user, yaws will search for its configuration file in the following order. First in $HOME/yaws.conf, then in ./yaws.conf and finally in /etc/yaws.conf
--runmod module
Tells yaws to call module:start/0 at startup. This makes it possible to startup user specific applications together with yaws.
--pa path
Add path to the yaws system search path
--tracetraf
Traffic trace mode. All traffic will be written to a trace file called trace.traffic in the log directory.
--tracehttp
HTTP trace mode. All HTTP messages will be written to a trace file called trace.http in the log directory.
--traceout
When yaws is put into trace mode using either --tracetraf or --tracehttp, traces are written to files. If we provide the --traceout flag, the trace will also be written to stdout.
--trace
Sames as --tracetraf --traceout. I.e. trace everything and write to stdout.
--mnesiadir dir
Start Mnesia in directory <dir>
--sname xxx
Start yaws as a distributed erlang node with name <xxx> using the unqualified hostname as nodename postfix
--disable-kpoll
By default, yaws starts erlang with +K true. This flag reverses that.
--name xxx
Start yaws as a distributed erlang node with name <xxx> using the fully qualified hostname as nodename postfix
--proto_dist Mod
Use module Mod for erlang distribution. This is typically only used when we want to run erlang distribution over SSL.
--erlarg STRING
Pass STRING as an additional argument to the "erl" program.
--id ID
This flag sets the id. If we're starting a daemon (or an interactive system) it gives the Yaws server the identity ID. This means that the server will write all internal files into the directory $HOME/.yaws/ID.

Yaws also creates a file called ${VARDIR}/run/yaws/ctl-${ID} which contains the portnumber the daemon is listening on for control request by the control command such as "yaws --hup" etc.

If we're invoking a control command which should perform some control function on the daemon, we may have to give the --id flag also to the control command. If we don't do this the control command may interact with the wrong daemon due to finding the wrong "ctl" file.

The daemon may also optionally specify the "id" in the yaws.conf configuration file.

CONTROL OPTIONS

The following list of options are are used to control the daemon from the "outside" while it is running.

--hup [--id ID]
HUP the daemon. This forces the daemon to reread the configuration file. It also makes the daemon empty all its internal content caches. Hence when updating the doc root, HUPing the daemon is the fastest way to see the content updates.
--stop [--id id]
Stop the daemon (called id)
--ls
Lists current ids and status of all yaws servers on localhost. In practice this amounts to a listdir in $HOME/.yaws/yaws - and check wether the different systems who has created files there are alive.
--status [--id id]
Query a running yaws daemon for its status, and print it.
--load Modules [--id id]
Try to (re)load erlang modules into a running daemon. This is useful after modifying appmods or modules used by scripts.
--debug-dump [--id id]
Produce a debug dump on stdout. In particular this code lists what we refer to as suspicious processes. I.e. processes that might be hanging or processes that are "large" - hardcoded to 40k words.
--ctltrace [--id ID] http | traffic | off
Control the trace capabilities of a running yaws daemon. If the http or traffic option is given, the daemon will write a log for debug purposes into the logdir.
--wait-started [--id ID]
Waits at most 5 seconds for the server to start. Exits with 0 if server is running, 1 otherwise. Typically useful in test scripts.

MISC OPTIONS

--check YawsFile [IncDirs ....]
Test compile a `.yaws' file. Useful in Makefiles when we want to ensure that all .yaws files are syntactically correct
--version
output version information and exit

AUTHOR

Written by Claes Wikstrom

SEE ALSO

yaws.conf(5) erl(1)