Skip to content

Several configuration files

sdikiy edited this page Jul 12, 2012 · 1 revision
  1. Create symbolic links to tinyows in cgi-bin directory.
cgi-bin$ ln -s tinyows tinyows.fcgi
cgi-bin$ ln -s tinyows tinyows100.fcgi
cgi-bin$ ln -s tinyows tinyows110.fcgi
cgi-bin$ ln -s tinyows tinyowsgisetz.fcgi

cgi-bin$ ls -la
   4096 Jul 11 11:06 .
   4096 Jan 31 12:00 ..
 603520 Jul 10 14:41 tinyows
      7 Jul 11 11:06 tinyows100.fcgi -> tinyows
      7 Jul 11 11:06 tinyows110.fcgi -> tinyows
      7 Jul 11 11:06 tinyows.fcgi -> tinyows
      7 Jul 11 11:06 tinyowsgisetz.fcgi -> tinyows
  1. Create tinyows config files
/etc/tinyows.fcgi
/etc/tinyows100.fcgi
/etc/tinyows110.fcgi
/etc/tinyowsgisetz.fcgi
  1. Change apache config
FcgidCmdOptions /path_to_tinyows_cgi_dir/cgi-bin/tinyows.fcgi InitialEnv TINYOWS_CONFIG_FILE=/etc/tinyows.xml
FcgidCmdOptions /path_to_tinyows_cgi_dir/cgi-bin/tinyows100.fcgi InitialEnv TINYOWS_CONFIG_FILE=/etc/tinyows100.xml
FcgidCmdOptions /path_to_tinyows_cgi_dir/cgi-bin/tinyows110.fcgi InitialEnv TINYOWS_CONFIG_FILE=/etc/tinyows110.xml
FcgidCmdOptions /path_to_tinyows_cgi_dir/cgi-bin/tinyowsgisetz.fcgi InitialEnv TINYOWS_CONFIG_FILE=/etc/tinyowsgisetz.xml
  1. Apache will run different processes for different configuration files.
cgi-bin$ top
...
  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
21069 www-data  20   0 24284 4096  792 S    0  0.4   0:00.03 apache2
21070 www-data  20   0 24340 4748 1236 S    0  0.5   0:00.03 apache2
21071 www-data  20   0 24284 3924  640 S    0  0.4   0:00.01 apache2
21073 www-data  20   0  9144 4040 2896 S    0  0.4   0:00.10 tinyows.fcgi
21075 www-data  20   0 24284 3916  632 S    0  0.4   0:00.00 apache2
21077 www-data  20   0 24284 3916  632 S    0  0.4   0:00.00 apache2
21079 www-data  20   0  9144 4040 2896 S    0  0.4   0:00.10 tinyowsgisetz.f
21082 www-data  20   0  9144 4040 2896 S    0  0.4   0:00.10 tinyows110.fcgi

Disadvantage.

  1. The following is not acceptable:
ScriptAlias /cgi-bin/ /path_to_tinyows_cgi_dir/cgi-bin/
<Directory "/path_to_tinyows_cgi_dir/cgi-bin/">
    ...
    RewriteEngine On
    RewriteRule ^tinyows(.*)fcgi$ - [E=TINYOWS_CONFIG_FILE:/etc/tinyows$1xml]
    ...
</Directory>
  1. The following is not acceptable:
ScriptAlias /cgi-bin/ /path_to_tinyows_cgi_dir/cgi-bin/
<Directory "/path_to_tinyows_cgi_dir/cgi-bin/">
    ...
    RewriteEngine On
    RewriteCond %{QUERY_STRING} ConfigFromQuery=([^&]*)
    RewriteRule .* - [E=TINYOWS_CONFIG_FILE:%1]
    ...
</Directory>
Clone this wiki locally