Deploying Catalyst-based applications on Nginx using FastCGI
I recently had to set up a new catalyst application on a new server, and picked Nginx as an experiment
The config was mostly simple, but I had to use the following conf/fastcgi_params to get it to work:
conf/fastcgi_params
The difference from the ones I found elsewhere on this site is that catalyst expects PATH_INFO instead of SCRIPT_NAME
#fastcgi.conf
fastcgi_param GATEWAY_INTERFACE CGI/1.1;
fastcgi_param SERVER_SOFTWARE nginx;
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 PATH_INFO $fastcgi_script_name;
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 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;
conf/nginx.conf
as usual:
location / {
fastcgi_pass 127.0.0.1:9000;
include conf/fastcgi_params;
}
