[Rt-commit] rt branch, deployment-configs, created. rt-4.0.0rc6-45-g1562e31

Alex Vandiver alexmv at bestpractical.com
Fri Mar 11 17:22:18 EST 2011


The branch, deployment-configs has been created
        at  1562e31fb4abd467ba9b78a06118eb9c5c35b7fe (commit)

- Log -----------------------------------------------------------------
commit e5eeb7cd51c597a72825c6d3fb3f702b702a0115
Author: Alex Vandiver <alexmv at bestpractical.com>
Date:   Fri Mar 11 16:32:17 2011 -0500

    Note that the old web handlers do not work with 4.0

diff --git a/docs/UPGRADING-4.0 b/docs/UPGRADING-4.0
index b1cba9a..223b134 100644
--- a/docs/UPGRADING-4.0
+++ b/docs/UPGRADING-4.0
@@ -15,9 +15,10 @@ _Overlay files:
 
     find /opt/rt3/lib/ -type f -name '*_Overlay*' -delete
 
-RT has also removed the files and scripts used in previous releases in your web
-server configuration.  You need to review docs/web_deployment.pod for current
-instructions
+RT has also changed how web deployment works; you will need to review
+docs/web_deployment.pod for current instructions.  The old
+`fastcgi_server`, `webmux.pl`, and `mason_handler.*` files will not
+work with RT 4.0, and should be removed to reduce confusion.
 
 *******
 Upgrading sessions on MySQL

commit d0438a700eba0d965bb6a85cd111fceefa8f72b3
Author: Alex Vandiver <alexmv at bestpractical.com>
Date:   Fri Mar 11 17:02:01 2011 -0500

    Remove some unnecessary boilerplate

diff --git a/docs/web_deployment.pod b/docs/web_deployment.pod
index 2f6b1ac..113a6c3 100644
--- a/docs/web_deployment.pod
+++ b/docs/web_deployment.pod
@@ -26,34 +26,13 @@ to use L<Starman>, a high performance preforking server:
 
 B<WARNING: mod_perl 1.99_xx is not supported.>
 
-Add a few lines to your Apache 2.xx configuration file, so that
-it knows where to find RT:
-
-    <IfModule !mpm_netware_module>
-    <IfModule !mpm_winnt_module>
-    User rt
-    Group www
-    </IfModule>
-    </IfModule>
-
     <VirtualHost rt.example.com>
-        ServerRoot /usr
-        ServerAdmin root at localhost
-
-        LoadModule authz_host_module modules/mod_authz_host.so
-        LoadModule env_module modules/mod_env.so
-        LoadModule alias_module modules/mod_alias.so
-        LoadModule perl_module modules/mod_perl.so
-
-        # optional apache logs for RT
+        ### Optional apache logs for RT
         # ErrorLog /opt/rt4/var/log/apache2.error
         # TransferLog /opt/rt4/var/log/apache2.access
         # LogLevel debug
 
         AddDefaultCharset UTF-8
-        PerlSetEnv RT_SITE_CONFIG /opt/rt4/etc/RT_SiteConfig.pm
-
-        RedirectMatch permanent (.*)/$ $1/index.html
 
         DocumentRoot "/opt/rt4/share/html"
         <Location />
@@ -86,19 +65,11 @@ Apache configuration file telling it about RT:
 
     FastCgiServer /opt/rt4/sbin/rt-server.fcgi -processes 5 -idle-timeout 300
 
-    <IfModule !mpm_netware_module>
-    <IfModule !mpm_winnt_module>
-    User rt
-    Group www
-    </IfModule>
-    </IfModule>
 
     <VirtualHost rt.example.com>
-        ServerAdmin root at localhost
 
-        LoadModule fastcgi_module modules/mod_fastcgi.so
 
-        # optional apache logs for RT
+        ### Optional apache logs for RT
         # ErrorLog /opt/rt4/var/log/apache2.error
         # TransferLog /opt/rt4/var/log/apache2.access
         # LogLevel debug

commit d02bd6d0678416b6be32b5fa2fec103e489dcfa2
Author: Alex Vandiver <alexmv at bestpractical.com>
Date:   Fri Mar 11 17:04:03 2011 -0500

    Indent correctly

diff --git a/docs/web_deployment.pod b/docs/web_deployment.pod
index 113a6c3..cbd51a9 100644
--- a/docs/web_deployment.pod
+++ b/docs/web_deployment.pod
@@ -43,10 +43,10 @@ B<WARNING: mod_perl 1.99_xx is not supported.>
             PerlResponseHandler Plack::Handler::Apache2
             PerlSetVar psgi_app /opt/rt4/sbin/rt-server
         </Location>
-    <Perl>
-        use Plack::Handler::Apache2;
-        Plack::Handler::Apache2->preload("/opt/rt4/sbin/rt-server");
-    </Perl>
+        <Perl>
+            use Plack::Handler::Apache2;
+            Plack::Handler::Apache2->preload("/opt/rt4/sbin/rt-server");
+        </Perl>
     </VirtualHost>
 
 =head2 FastCGI

commit e0054752a088ddc78609da255a538b5f1abf79e4
Author: Alex Vandiver <alexmv at bestpractical.com>
Date:   Fri Mar 11 17:10:19 2011 -0500

    Remove reference to "document mentioned above", etc

diff --git a/docs/web_deployment.pod b/docs/web_deployment.pod
index cbd51a9..2e9cedf 100644
--- a/docs/web_deployment.pod
+++ b/docs/web_deployment.pod
@@ -49,16 +49,9 @@ B<WARNING: mod_perl 1.99_xx is not supported.>
         </Perl>
     </VirtualHost>
 
-=head2 FastCGI
+=head2 mod_fastcgi
 
-In the most basic configuration, you can set up your webserver to run
-as a user who is a member of the "rt" unix group so that the FastCGI script
-can read RT's configuration file.  It's important to understand the security
-implications of this configuration, which are discussed in the document
-mentioned above.
 
-To run RT using FastCGI, you'll need to add a few lines to your
-Apache configuration file telling it about RT:
 
     # Tell FastCGI to put its temporary files somewhere sane.
     FastCgiIpcDir /tmp

commit cdb1fc730f1d9a0407ea30b8177f59ee3fac9d12
Author: Alex Vandiver <alexmv at bestpractical.com>
Date:   Fri Mar 11 17:16:39 2011 -0500

    Most distributions give a default value for FastCgiIpcDir, and it is an error to set it twice

diff --git a/docs/web_deployment.pod b/docs/web_deployment.pod
index 2e9cedf..b2a089f 100644
--- a/docs/web_deployment.pod
+++ b/docs/web_deployment.pod
@@ -53,8 +53,6 @@ B<WARNING: mod_perl 1.99_xx is not supported.>
 
 
 
-    # Tell FastCGI to put its temporary files somewhere sane.
-    FastCgiIpcDir /tmp
 
     FastCgiServer /opt/rt4/sbin/rt-server.fcgi -processes 5 -idle-timeout 300
 

commit 4750cdb44f82520cd1a6e5317358599e80cae866
Author: Alex Vandiver <alexmv at bestpractical.com>
Date:   Fri Mar 11 17:17:18 2011 -0500

    Add a mod_fcgid configuration as well

diff --git a/docs/web_deployment.pod b/docs/web_deployment.pod
index b2a089f..ca1395d 100644
--- a/docs/web_deployment.pod
+++ b/docs/web_deployment.pod
@@ -51,15 +51,32 @@ B<WARNING: mod_perl 1.99_xx is not supported.>
 
 =head2 mod_fastcgi
 
+    FastCgiServer /opt/rt4/sbin/rt-server.fcgi -processes 5 -idle-timeout 300
 
+    <VirtualHost rt.example.com>
+        ### Optional apache logs for RT
+        # ErrorLog /opt/rt4/var/log/apache2.error
+        # TransferLog /opt/rt4/var/log/apache2.access
+        # LogLevel debug
 
+        AddDefaultCharset UTF-8
 
-    FastCgiServer /opt/rt4/sbin/rt-server.fcgi -processes 5 -idle-timeout 300
+        Alias /NoAuth/images/ /opt/rt4/share/html/NoAuth/images/
+        ScriptAlias / /opt/rt4/sbin/rt-server.fcgi/
 
+        DocumentRoot "/opt/rt4/share/html"
+        <Location />
+            Order allow,deny
+            Allow from all
 
-    <VirtualHost rt.example.com>
+            Options +ExecCGI
+            AddHandler fastcgi-script fcgi
+        </Location>
+    </VirtualHost>
 
+=head2 mod_fcgid
 
+    <VirtualHost rt.example.com>
         ### Optional apache logs for RT
         # ErrorLog /opt/rt4/var/log/apache2.error
         # TransferLog /opt/rt4/var/log/apache2.access
@@ -76,7 +93,7 @@ B<WARNING: mod_perl 1.99_xx is not supported.>
             Allow from all
 
             Options +ExecCGI
-            AddHandler fastcgi-script fcgi
+            AddHandler fcgid-script fcgi
         </Location>
     </VirtualHost>
 

commit 1562e31fb4abd467ba9b78a06118eb9c5c35b7fe
Author: Alex Vandiver <alexmv at bestpractical.com>
Date:   Fri Mar 11 17:18:31 2011 -0500

    Add example nginx and lighttpd configs

diff --git a/docs/web_deployment.pod b/docs/web_deployment.pod
index ca1395d..a2397fe 100644
--- a/docs/web_deployment.pod
+++ b/docs/web_deployment.pod
@@ -97,9 +97,71 @@ B<WARNING: mod_perl 1.99_xx is not supported.>
         </Location>
     </VirtualHost>
 
-To run RT using FastCGI with other web servers like nginx, please see
-L<Plack::Handler::FCGI> for configuration examples.  You should use
-C</opt/rt4/sbin/rt-server.fcgi> as your PSGI-app.
+=head3 nginx
+
+C<nginx> requires that you start RT's fastcgi process externally, for
+example using C<spawn-fcgi>:
+
+    spawn-fcgi -u www-data -g www-data -a 127.0.0.1 -p 9000 \
+        -- /opt/rt4/sbin/rt-server.fcgi
+
+With the nginx configuration:
+
+    server {
+        listen 80;
+        server_name rt.example.com;
+        access_log  /var/log/nginx/access.log;
+
+        location / {
+            fastcgi_param  QUERY_STRING       $query_string;
+            fastcgi_param  REQUEST_METHOD     $request_method;
+            fastcgi_param  CONTENT_TYPE       $content_type;
+            fastcgi_param  CONTENT_LENGTH     $content_length;
+
+            fastcgi_param  SCRIPT_NAME        "";
+            fastcgi_param  PATH_INFO          $uri;
+            fastcgi_param  REQUEST_URI        $request_uri;
+            fastcgi_param  DOCUMENT_URI       $document_uri;
+            fastcgi_param  DOCUMENT_ROOT      $document_root;
+            fastcgi_param  SERVER_PROTOCOL    $server_protocol;
+
+            fastcgi_param  GATEWAY_INTERFACE  CGI/1.1;
+            fastcgi_param  SERVER_SOFTWARE    nginx/$nginx_version;
+
+            fastcgi_param  REMOTE_ADDR        $remote_addr;
+            fastcgi_param  REMOTE_PORT        $remote_port;
+            fastcgi_param  SERVER_ADDR        $server_addr;
+            fastcgi_param  SERVER_PORT        $server_port;
+            fastcgi_param  SERVER_NAME        $server_name;
+            fastcgi_pass 127.0.0.1:9000;
+        }
+
+        location /NoAuth/images {
+            root /opt/rt4/share/html;
+        }
+    }
+
+=head3 lighttpd
+
+    server.modules += ( "mod_fastcgi" )
+    $HTTP["host"] =~ "^rt.example.com" {
+        alias.url = (
+            "/NoAuth/images/" => "/opt/rt4/share/html/NoAuth/images/",
+        )
+        $HTTP["url"] !~ "^/NoAuth/images/" {
+            fastcgi.server = (
+                "/" => (
+                    "rt" => (
+                        "port"        => "9000",
+                        "bin-path"    => "/opt/rt4/sbin/rt-server.fcgi",
+                        "check-local" => "disable",
+                        "fix-root-scriptname" => "enable",
+                    )
+                )
+            )
+        }
+    }
+
 
 =head2 mod_perl 1.xx
 

-----------------------------------------------------------------------


More information about the Rt-commit mailing list