Update for nginx non-root to have more info
Tomas Doran [Thu, 16 Feb 2012 20:37:37 +0000 (20:37 +0000)]
Changes
lib/Catalyst/Manual/Deployment/nginx/FastCGI.pod

diff --git a/Changes b/Changes
index 2ae2aa9..7d84e24 100644 (file)
--- a/Changes
+++ b/Changes
@@ -3,6 +3,8 @@ Revision history for Catalyst-Manual
     - Mention PSGI in Manual::Ingro RT 74872 (thanks William Blunn).
     - Better docs of :Global inspired by RT 74869 (thanks William Blunn)
     - Highlight the importance of uncommenting the template line in the list action
+    - Clarify docs for nginx in non-root - a trailing slash on the
+      location block is very much needed.
 
 5.9003
     - Clarified Data::Dumper usage.  RT#71410 Thanks to Bill Corr
index d8e5f9a..10c15fe 100644 (file)
@@ -60,8 +60,13 @@ prefix of your application, and PATH_INFO would be everything in addition.
 
 As an example, if your application is rooted at /myapp, you would configure:
 
-    fastcgi_param  SCRIPT_NAME /myapp/;
-    fastcgi_param  PATH_INFO   $fastcgi_script_name;
+    rewrite ^/myapp$ /myapp/ permanent;
+    location /myapp/ {
+        include /etc/nginx/fastcgi_params;
+        fastcgi_param SCRIPT_NAME /myapp/;
+        fastcgi_param PATH_INFO   $fastcgi_script_name;
+        fastcgi_pass unix:/tmp/mediaapi.socket;
+    }
 
 C<$fastcgi_script_name> would be "/myapp/path/of/the/action".  Catalyst will
 process this accordingly and setup the application base as expected.
@@ -69,6 +74,10 @@ process this accordingly and setup the application base as expected.
 This behavior is somewhat different from Apache and lighttpd, but is still
 functional.
 
+Note that the rewrite may not be needed with newer versions of nginx,
+and the paths must be exactly as specified - the trailing slash in the
+location block and the SCRIPT name are important.
+
 =head2 SSL
 
 Make sure that nginx passes this to your fastcgi. To ensure this, you need