Provided by: libapache2-mod-mono_2.11+git20130708.6b73e85-4ubuntu1_amd64 bug

NAME

       mod_mono  -  apache  module  that  enables  ASP.NET  pages.  Works together with mod-mono-
       server.exe

DESCRIPTION

       mod_mono is a simple module that works with Apache 2.0 or newer.

       It needs mod-mono-server.exe installed on the system. By default, it will  attemp  to  run
       mod-mono-server.exe if it doesn't find it's running.

CONFIGURATION DIRECTIVES

       All  the  directives  but MonoSetServerAlias accept an optional first argument that is the
       mod-mono-server instance alias for which the directive applies.  If only one  argument  is
       provided  for  them,  thr  directive will apply to the 'default' mod-mono-server instance.
       Refer to the monodoc documentation on configuring mod_mono for more examples.

       MonoUnixUmask
              It accepts an octal number as a parameter. The number must be  a  valid  unix  file
              creation  mask  value (see umask(2)). The mask will be applied whenever a directory
              or file is created from within an ASP.NET application.  Default value: "0077".

       MonoUnixSocket
              It accepts a file name as argument.  That  file  will  be  a  named  pipe  used  to
              send/receive  data  from/to  mod_mono  to/from  mod-mono-server.   You  cannot  use
              MonoListenPort   and   MonoUnixSocket   at   the   same   time.    Default   value:
              "/tmp/mod_mono_server".

       MonoListenPort
              TCP port on which mod-mono-server should listen/is listening on. Mutually exclusive
              with MonoUnixSocket. When this options is specified, mod-mono-server  and  mod_mono
              will use a TCP socket for communication.  Default value: none

       MonoListenBacklog N
              The  backlog  of  connections to set on the listener socket in mod-mono-server.  By
              default the value is set to 500.

       MonoMinThreads N
              The  minimum  number  of  threads  the  threadpool  allocates  in  mod-mono-server.
              Increase  this  value  to  better  handle  the  sudden arrival of connections.  The
              default value is determined by the mono runtime.

       MonoListenAddress
              IP address where mod-mono-server should listen/is listening on. Can  only  be  used
              when MonoListenPort is specified.  Default value: "127.0.0.1"

       MonoRunXSP
              If  the  value  is True, it tells mod_mono to spawn mod-mono-server.exe if it's not
              already running. If set to False, most of these directives  are  useless.   Default
              value: True

       MonoXSPStartAttempts
              Number  of  times mod_mono will attempt to start a backend which died. Value cannot
              be lower than 0.  Default value: 3

       MonoXSPStartWaitTime
              Number of seconds to wait after starting the backend. This is to  let  the  backend
              initialize  properly before attempting to connect to it. Value cannot be lower than
              2.  Default value: 2

       MonoAutoRestartMode
              Set the auto-restart mode for the backend(s). Three modes are available: None -  do
              not  auto-restart, Requests - restart after a configured number of requests served,
              Time - restart after the backend has been up for  the  specified  period  of  time.
              Note  that  if  you enable auto-restart you should consider using off-process state
              server, since on every restart your application state will be lost.  Default value:
              None

       MonoAutoRestartRequests
              Number of requests for a backend to serve before auto-restarting. The value here is
              taken into account only when  MonoAutoRestartMode  is  set  to  Requests.   Default
              value: 10000

       MonoAutoRestartTime
              Time  after  which  the  backend  should  be  auto-restarted.  The  time format is:
              DD[:HH[:MM[:SS]]]. Default value: 00:12:00:00

       MonoExecutablePath (Obsoleted, ignored)
              Don't use this. It is ignored and has been left here  for  compatibility  purposes.
              Default value: "/usr/bin/mono"

       MonoPath
              This  value will be used to set the MONO_PATH environment variable.  Default value:
              ""

       MonoServerPath
              The full path to the mod-mono-server script.   Default  value:  "/usr/bin/mod-mono-
              server"

       MonoTargetFramework
              If  MonoRunXSP is True, this option selects the .NET framework version to use. This
              affects the backend that is started to service  the  requests.  The  MonoServerPath
              option  takes  precedence  over this setting. Available values are "2.0", "3.5" and
              "4.0".  Default value: "2.0"

       MonoWapiDir
              The directory where mono runtime will create the ".wapi" directory used to  emulate
              windows I/O. It's used to set MONO_SHARED_DIR.  Default value: "/tmp"

       MonoDocumentRootDir
              The directory passed in --root argument when launching mod-mono-server.

       MonoMaxCPUTime
              If  MonoRunXSP  is  True,  CPU  time  limit in seconds allowed for the spawned mono
              process. Beyond that, it will be restarted. If this capability is not available  on
              your system, the directive will be ignored.  Default value: system default

       MonoMaxMemory
              If  MonoRunXSP  is True, the maximum size of the process's data segment (data size)
              in bytes allowed for the spawned mono process.  It will be restarted when the limit
              is  reached. If this capability is not available on your system, the directive will
              be ignored.  Default value: system default

       MonoApplications

       AddMonoApplications
              This value will be passed to mod-mono-server.exe in the --applications option.  See
              xsp(1) manual page for details.

       MonoApplicationsConfigFile
              The argument passed in --appconfigfile argument to mod-mono-server.  Default value:
              NULL.

       MonoApplicationsConfigDir
              The argument passed in --appconfigdir argument to mod-mono-server.  Default  value:
              config/mod-mono-applications

       Note  that  you  must specify at least one of MonoApplications, MonoApplicationsConfigFile
       and MonoApplicationsConfigDir.

       MonoAutoApplication
              Enables or disables automatic ASP.NET applications  discovery.  By  default  it  is
              enabled  if  you  have  no  application  configured.  Otherwise, it's disabled. The
              possible values are 'enabled' or 'disabled'.

       MonoDebug
              Runs mono in debug mode, which produces stack traces with  line  numbers.   Default
              value: False.

       MonoSetServerAlias
              Takes  a  server  alias  name. This is to be used inside <Directory> or <Location>.
              Default value: 'default' if the directive is not used.

       MonoSetEnv
              Takes a string of 'name=value' pairs separated by semicolons.  For  each  pair,  it
              calls setenv (name, value) before running mod-mono-server.

       MonoIOMAP
              Takes  alias  name  and  a  string of the same format and meaning as the MONO_IOMAP
              environment variable (see  the  mono(1)  manpage).  The  effect  is  that  mod_mono
              performs  the  same  actions  as mono runtime with MONO_IOMAP in effect, as well as
              that the MONO_IOMAP variable with the specified value is exported  in  the  backend
              environment.   This  option  is  necessary  when  you're  using  MONO_IOMAP in your
              application and there might be static files with mixed case names -  in  such  case
              mod_mono  attempts  to open the file directly and sends it using apache facilities.
              Default value: none

       MonoMaxActiveRequests
              The maximum number of concurrent requests mod_mono will pass  off  to  the  ASP.NET
              backend. Set to zero to turn off the limit. Default value: 0.

       MonoMaxWaitingRequests
              The  maximum  number  of  concurrent  requests mod_mono will hold while the ASP.NET
              backend  is   busy   with   the   maximum   number   of   requests   specified   by
              MonoMaxActiveRequests.  Requests  that  can't be processed or held are dropped with
              Service Unavailable. Default value: 150.

       MonoCheckHiddenFiles
              Do not protect hidden files/directories from  being  accessed  by  clients.  Hidden
              files/directories  are those with Hidden attribute on Windows and whose name starts
              with a dot on Unix. Any file/directory below a  hidden  directory  is  inacessible.
              This  option  turns  the default behavior of protecting such locations off. If your
              application does not contain any hidden files/directories, you might  want  to  use
              this option as the checking process has a per-request cost. Accepts a boolean value
              -   'true'   or   'false'   Default   value:   true.    AppSettings    key    name:
              MonoServerCheckHiddenFiles.

SAMPLE VIRTUAL HOST CONFIGURATION

       Note that the configuration below requires the mod_mono module to be loaded by Apache. How
       it is done is distribution-specific - please check  your  distribution  documentation  for
       details.

       This one using <Directory>:
             Alias /mono "/usr/lib/xsp/test"
             AddMonoApplications default "/mono:/usr/lib/xsp/test"
             <Directory /usr/lib/xsp/test>
                     SetHandler mono
                     <IfModule mod_dir.c>
                           DirectoryIndex index.aspx
                     </IfModule>
             </Directory>

       This one using <Location>:
             Alias /demo "/usr/lib/xsp/test"
             AddMonoApplications default "/demo:/usr/lib/xsp/test"
             <Location /demo>
                     SetHandler mono
             </Location>

       If  you  prefer  to .webapp configuration file(s) (see manual page of xsp), you can change
       MonoApplications in the above samples by:

             MonoApplicationsConfigFile default "/var/www/applications.webapp"

       replacing the path to the file with yours.

       If you want to use several .webapp files, use this instead:

             MonoApplicationsConfigDir default "/var/www/webapp"

       and all the .webapp files found in the directory /var/www/webapp will be loaded.

       Refer to monodoc documentation on configuring mod_mono for more examples.

THE MOD_MONO CONTROL PANEL

       mod_mono provides a simple web-based control panel  for  restarting  the  mod-mono-server,
       which  is  useful  when  assemblies  need  to  be  reloaded from disk after they have been
       changed.  To activate the control panel, place the following in your httpd.conf:

                   <Location /mono>
                     SetHandler mono-ctrl
                     Order deny,allow
                     Deny from all
                     Allow from 127.0.0.1
                   </Location>

       The control panel is then accessible at http://yourdomain.com/mono.  Clicking the link  to
       restart mod-mono-server will immediately restart it.

       The  Order/Deny/Allow  access  controls  above restrict access to the control panel to the
       computer with IP address 127.0.0.1. Replace this (or add more Allow  lines)  with  the  IP
       address  of  your own computer so that you can access the control panel.  You can also use
       Apache's htaccess features to password protect it, too.

ENVIRONMENT VARIABLES

       It may modify MONO_PATH, PATH and MONO_SHARED_DIR when starting mod-mono-server.

       The MOD_MONO_CCV variable may be used to select which component will do client certificate
       validity   (CCV)  checks.  By  default  both  Apache  and  Mono  will  verify  the  client
       certificates. This can be changed to either "apache" or "mono" to limit the validity check
       to either environment.  This variable can be set using MonoSetEnv to allow different vhost
       to use separate validation techniques.

       The MOD_MONO_LOCKING_MECHANISM variable may be used to choose the  APR  locking  mechanism
       for  the  dashboard.  The  currently  defined  mechanism  names are: DEFAULT, FCNT, FLOCK,
       SYSVSEM, PROC_PTHREAD, POSIXSEM. Note that not every mechanism may be available  for  your
       platform.  In  such case, mod_mono will fallback to using the DEFAULT value which lets the
       APR decide which locking mechanism to use. DEFAULT is  also  the  default  value  for  the
       option if the environment variable is not set or its value is unknown. This value MUST NOT
       be set using MonoSetEnv - it MUST be present in the Apache environment before  the  module
       is initialized and its configuration parsed.

FILES

       httpd.conf

AUTHORS

       mod_mono  was  started by Daniel Ridruejo (daniel rawbyte com). Currently, Marek Habersack
       (mhabersack@novell.com) is the maintainer.

MAILING LISTS

       See http://mail.ximian.com/mailman/mono-list for details.

WEB SITE

       Visit http://mono-project.com/Mod_mono for details.

SEE ALSO

       xsp(1),mod-mono-server(1),mono(1),mcs(1)