r2 - 14 Oct 2014 - 10:01 - MatthiasGeorgi | r1 - 14 Oct 2014 - 09:55 - UnknownUser | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
FastCGI Engine Contrib |
FastCGI Engine Contrib |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Permits Foswiki to be executed with FastCGI? |
Permits Foswiki to be executed with FastCGI? |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
On this page: |
On this page: |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Overview |
Overview |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
FastCGI is a technology to deliver dynamic web content. It differs from CGI cause it remains persistent between requests, instead of CGI approach of a new forked process per request. This way there is a significant performance improvement, since all overhead related to create a new process, load the interpreter and compile the code is skipped. |
FastCGI is a technology to deliver dynamic web content. It differs from CGI cause it remains persistent between requests, instead of CGI approach of a new forked process per request. This way there is a significant performance improvement, since all overhead related to create a new process, load the interpreter and compile the code is skipped. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Some FastCGI features: |
Some FastCGI features: |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Installation Instructions |
Installation Instructions |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
This section is about how to configure FastCGIEngineContrib, considering many possible environments: |
This section is about how to configure FastCGIEngineContrib, considering many possible environments: |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Installation of the FCGI CPAN library |
Installation of the FCGI CPAN library |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
FastCGIEngineContrib uses a CPAN library called FCGI which is not normally distributed with Perl. Version of FCGI should be 0.67 or later |
FastCGIEngineContrib uses a CPAN library called FCGI which is not normally distributed with Perl. Version of FCGI should be 0.67 or later |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Generic CPAN references as well as the most popular distribution packages are listed below |
Generic CPAN references as well as the most popular distribution packages are listed below |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Apache |
Apache |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Apache Module |
Apache Module |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
There are two options that basicly do the same thing |
There are two options that basicly do the same thing |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
It is difficult to recommend one or the other. In some cases one will work and the other will not. Most positive reports have been with mod_fcgidbut both have been tested and work with standard out-of-the-box Apache and Foswiki setups. mod_fcgid is easier to find as package because of its GPL license so it may be the best place to start. Fedora has mod_fcgid on the installation DVD now. |
It is difficult to recommend one or the other. In some cases one will work and the other will not. Most positive reports have been with mod_fcgidbut both have been tested and work with standard out-of-the-box Apache and Foswiki setups. mod_fcgid is easier to find as package because of its GPL license so it may be the best place to start. Fedora has mod_fcgid on the installation DVD now. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Below are some resources for the most common Linux distributions. The actual versions of the latest packages may have changed since this documentation was written. |
Below are some resources for the most common Linux distributions. The actual versions of the latest packages may have changed since this documentation was written. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
mod_fcgid resources |
mod_fcgid resources |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
mod_fastcgi resources |
mod_fastcgi resources |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Apache Configuration |
Apache Configuration |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
![]() |
![]() |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Using only |
Using only |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Using only |
Using only |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Examples |
Examples |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
![]() ![]() fcgid-script with fastcgi-script . ![]() mod_fcgid is a default module that is shipped with Apache httpd. |
![]() ![]() fcgid-script with fastcgi-script . ![]() mod_fcgid is a default module that is shipped with Apache httpd. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Using mod_rewrite: |
Using mod_rewrite: |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
# bin/.htaccess file Options +ExecCGI RewriteEngine On # configure script is a special case, it must run as a CGI script: RewriteCond %{REQUEST_URI} !/configure # avoid loops: RewriteCond %{REQUEST_URI} !/foswiki.fcgi RewriteRule ^(.*) /foswiki/bin/foswiki.fcgi/$1 |
# bin/.htaccess file Options +ExecCGI RewriteEngine On # configure script is a special case, it must run as a CGI script: RewriteCond %{REQUEST_URI} !/configure # avoid loops: RewriteCond %{REQUEST_URI} !/foswiki.fcgi RewriteRule ^(.*) /foswiki/bin/foswiki.fcgi/$1 |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Using mod_actions: |
Using mod_actions: |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
# bin/.htaccess file Options +ExecCGI Action foswiki-fcgid /foswiki/bin/foswiki.fcgi SetHandler foswiki-fcgid |
# bin/.htaccess file Options +ExecCGI Action foswiki-fcgid /foswiki/bin/foswiki.fcgi SetHandler foswiki-fcgid |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Using apache .conf |
Using apache .conf |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Direct access to Apache configuration files open more possibilities than with |
Direct access to Apache configuration files open more possibilities than with |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Using mod_fastcgi |
Using mod_fastcgi |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
![]() mod_fcgid which is shipped standard with Apache httpd. |
![]() mod_fcgid which is shipped standard with Apache httpd. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
We can use static or dynamic servers: static servers are initialized with Apache itself and exists as long Apache is running. Dynamic servers are loaded on demand and killed if the aren't needed anymore. |
We can use static or dynamic servers: static servers are initialized with Apache itself and exists as long Apache is running. Dynamic servers are loaded on demand and killed if the aren't needed anymore. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
See mod_fastcgi documentation for more options. |
See mod_fastcgi documentation for more options. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
# Simple and traditional example. Alias /foswiki/bin/configure /var/www/foswiki/bin/configure Alias /foswiki/bin /var/www/foswiki/bin/foswiki.fcgi # Commenting the next line makes foswiki to be a dynamic server, loaded on demand FastCgiServer /var/www/foswiki/bin/foswiki.fcgi -processes 3 |
# Simple and traditional example. Alias /foswiki/bin/configure /var/www/foswiki/bin/configure Alias /foswiki/bin /var/www/foswiki/bin/foswiki.fcgi # Commenting the next line makes foswiki to be a dynamic server, loaded on demand FastCgiServer /var/www/foswiki/bin/foswiki.fcgi -processes 3 |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Refer to tuning section below for a little discussion about the number of FastCGI processes. |
Refer to tuning section below for a little discussion about the number of FastCGI processes. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
# External server: could be running at another machine and/or a different user from the webserver Alias /foswiki/bin/configure /var/www/foswiki/bin/configure Alias /foswiki/bin /var/www/foswiki/bin/foswiki.fcgi # Running an external server on the same machine: FastCgiExternalServer /var/www/foswiki/bin/foswiki.fcgi -socket /path/to/foswiki.sock # Or at another machine: FastCgiExternalServer /var/www/foswiki/bin/foswiki.fcgi -host example.com:8080 |
# External server: could be running at another machine and/or a different user from the webserver Alias /foswiki/bin/configure /var/www/foswiki/bin/configure Alias /foswiki/bin /var/www/foswiki/bin/foswiki.fcgi # Running an external server on the same machine: FastCgiExternalServer /var/www/foswiki/bin/foswiki.fcgi -socket /path/to/foswiki.sock # Or at another machine: FastCgiExternalServer /var/www/foswiki/bin/foswiki.fcgi -host example.com:8080 |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
When you're using external servers you must run the FastCGI processes manually: |
When you're using external servers you must run the FastCGI processes manually: |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
$ cd /var/www/foswiki/bin # To start a pool of processes, listening to a local UNIX socket: $ ./foswiki.fcgi --listen /path/to/foswiki.sock --nproc 3 --pidfile /path/to/pidfile.pid --daemon # Or listening to a local :port address: $ ./foswiki.fcgi --listen :port --nproc 3 --pidfile /path/to/pidfile.pid --daemon |
$ cd /var/www/foswiki/bin # To start a pool of processes, listening to a local UNIX socket: $ ./foswiki.fcgi --listen /path/to/foswiki.sock --nproc 3 --pidfile /path/to/pidfile.pid --daemon # Or listening to a local :port address: $ ./foswiki.fcgi --listen :port --nproc 3 --pidfile /path/to/pidfile.pid --daemon |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Run |
Run |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Using mod_fcgid |
Using mod_fcgid |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Comparison to |
Comparison to |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
# Simple and traditional example. Alias /foswiki/bin/configure /var/www/foswiki/bin/configure Alias /foswiki/bin /var/www/foswiki/bin/foswiki.fcgi |
# Simple and traditional example. Alias /foswiki/bin/configure /var/www/foswiki/bin/configure Alias /foswiki/bin /var/www/foswiki/bin/foswiki.fcgi |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ApacheLogin |
ApacheLogin |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
If you use |
If you use |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Lighttpd |
Lighttpd |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
You need to load both mod_cgi and mod_fastcgi. The first is used to run configure script?. From what I understood from the documentation, lighttpd doesn't support dynamic servers. |
You need to load both mod_cgi and mod_fastcgi. The first is used to run configure script. From what I understood from the documentation, lighttpd doesn't support dynamic servers. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
# Example with FastCGI processes launched by the webserver $HTTP["url"] =~ "^/foswiki/bin/configure" { alias.url += ( "/foswiki/bin" => "/var/www/foswiki/bin" ) cgi.assign = ( "" => "" ) } $HTTP["url"] =~ "^/foswiki/bin/" { alias.url += ( "/foswiki/bin" => "/var/www/foswiki/bin/foswiki.fcgi" ) fastcgi.server = ( ".fcgi" => ( ( "socket" => "/var/www/foswiki/working/tmp/foswiki.sock", "bin-path" => "/var/www/foswiki/bin/foswiki.fcgi", "max-procs" => 3 ), ) ) } |
# Example with FastCGI processes launched by the webserver $HTTP["url"] =~ "^/foswiki/bin/configure" { alias.url += ( "/foswiki/bin" => "/var/www/foswiki/bin" ) cgi.assign = ( "" => "" ) } $HTTP["url"] =~ "^/foswiki/bin/" { alias.url += ( "/foswiki/bin" => "/var/www/foswiki/bin/foswiki.fcgi" ) fastcgi.server = ( ".fcgi" => ( ( "socket" => "/var/www/foswiki/working/tmp/foswiki.sock", "bin-path" => "/var/www/foswiki/bin/foswiki.fcgi", "max-procs" => 3 ), ) ) } |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
# Example with external FastCGI processes (running on the same host, with another user or at a remote machine) $HTTP["url"] =~ "^/foswiki/bin/configure" { alias.url += ( "/foswiki/bin" => "/var/www/foswiki/bin" ) cgi.assign = ( "" => "" ) } $HTTP["url"] =~ "^/foswiki/bin/" { alias.url += ( "/foswiki/bin" => "/var/www/foswiki/bin/foswiki.fcgi" ) fastcgi.server = ( ".fcgi" => ( ( "host" => "example.com", "port" => "8080", ), ) ) } |
# Example with external FastCGI processes (running on the same host, with another user or at a remote machine) $HTTP["url"] =~ "^/foswiki/bin/configure" { alias.url += ( "/foswiki/bin" => "/var/www/foswiki/bin" ) cgi.assign = ( "" => "" ) } $HTTP["url"] =~ "^/foswiki/bin/" { alias.url += ( "/foswiki/bin" => "/var/www/foswiki/bin/foswiki.fcgi" ) fastcgi.server = ( ".fcgi" => ( ( "host" => "example.com", "port" => "8080", ), ) ) } |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Nginx |
Nginx |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In contrast to Apache or Lighttpd Nginx does not control the life time of the |
In contrast to Apache or Lighttpd Nginx does not control the life time of the |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
First, let's configure nginx to contact a |
First, let's configure nginx to contact a |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
server { ... root /var/www/foswiki; location = / { try_files $uri @foswiki; } location ~ ^/(?:/foswiki/bin/)?([A-Z_].*)$ { rewrite ^/(.*)$ /foswiki/bin/view/$1; } location ~ ^/pub/(System|Applications|images|cache)/ { expires 8h; gzip_static on; } location /pub { rewrite ^/pub/(.*)$ /foswiki/bin/viewfile/$1; } location /foswiki/bin { try_files $uri @foswiki; } location @foswiki { gzip off; fastcgi_pass 127.0.0.1:9000; fastcgi_split_path_info ^/foswiki/bin/(.+?)(/.*)$; fastcgi_param SCRIPT_FILENAME /var/www/foswiki/bin/foswiki.fcgi; fastcgi_param PATH_INFO $fastcgi_path_info; include fastcgi_params; } location ~ (^/lib|^/data|^/locale|^/templates|^/tools|^/work) { deny all; } ... } |
server { ... root /var/www/foswiki; location = / { try_files $uri @foswiki; } location ~ ^/(?:/foswiki/bin/)?([A-Z_].*)$ { rewrite ^/(.*)$ /foswiki/bin/view/$1; } location ~ ^/pub/(System|Applications|images|cache)/ { expires 8h; gzip_static on; } location /pub { rewrite ^/pub/(.*)$ /foswiki/bin/viewfile/$1; } location /foswiki/bin { try_files $uri @foswiki; } location @foswiki { gzip off; fastcgi_pass 127.0.0.1:9000; fastcgi_split_path_info ^/foswiki/bin/(.+?)(/.*)$; fastcgi_param SCRIPT_FILENAME /var/www/foswiki/bin/foswiki.fcgi; fastcgi_param PATH_INFO $fastcgi_path_info; include fastcgi_params; } location ~ (^/lib|^/data|^/locale|^/templates|^/tools|^/work) { deny all; } ... } |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Next, to integrate the |
Next, to integrate the |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
You should now be able to control the backend processes using |
You should now be able to control the backend processes using |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Finally, add the service to the runlevels using |
Finally, add the service to the runlevels using |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Tuning |
Tuning |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Except from Apache using only |
Except from Apache using only |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Dynamic servers are more useful when Foswiki access load on the server is low and/or it's used for something in addition to Foswiki. Under high loads, static servers can deliver better performance. |
Dynamic servers are more useful when Foswiki access load on the server is low and/or it's used for something in addition to Foswiki. Under high loads, static servers can deliver better performance. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Known Issues |
Known Issues |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
FastCGI specification defines an authorizer role besides the common used responder. Foswiki, by default, doesn't check access to attachments, unless you use viewfile? script. The problem with that script is that it's slow and resource-hungry. In future releases, this contrib will provide a way to add access checks to attachments with very little overhead, using the authorizer role. |
FastCGI specification defines an authorizer role besides the common used responder. Foswiki, by default, doesn't check access to attachments, unless you use viewfile script. The problem with that script is that it's slow and resource-hungry. In future releases, this contrib will provide a way to add access checks to attachments with very little overhead, using the authorizer role. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
![]() exec(2) system call, like Linux and other POSIX compliant systems. ![]() configure script. This script needs to run as a plain CGI script. There are some legacy extensions (not updated to Foswiki:Development/FoswikiStandAlone design) that adds scripts to the bin/ directory. You need to add exceptions for these scripts as well. ![]() STDERR stream. This may cause problems. |
![]() exec(2) system call, like Linux and other POSIX compliant systems. ![]() configure script. This script needs to run as a plain CGI script. There are some legacy extensions (not updated to Foswiki:Development/FoswikiStandAlone design) that adds scripts to the bin/ directory. You need to add exceptions for these scripts as well. ![]() STDERR stream. This may cause problems. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Info |
Info |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
r2 - 14 Oct 2014 - 10:01 - MatthiasGeorgi | r1 - 14 Oct 2014 - 09:55 - UnknownUser | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||