Configuring nginx for ikiwiki

Notes on configuring nginx for ikiwiki and fastcgi

This is only needed if you want to be able edit the wiki via a web interface, otherwise you just need to serve static pages. If you do want to disable web editing, just look through your ikiwiki setup file and remove the cgiurl

make sure nginx, fcgiwrap and spawn-fcgi are installed

server {
  server_name         not.burntout.org;
  access_log   /var/log/nginx/not.burntout.org.access.log;
  root         /srv/www/not.burntout.org;
  index        index.html;
  try_files    $uri $uri.html $uri/index.html /index.html;

  location = /ikiwiki.cgi {
       fastcgi_pass   unix:/var/run/fcgiwrap.socket;
       fastcgi_index  ikiwiki.cgi;
       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        /ikiwiki.cgi;
       fastcgi_param  REQUEST_URI        $request_uri;
       fastcgi_param  DOCUMENT_URI       $document_uri;
       fastcgi_param  DOCUMENT_ROOT      /srv/www/not.burntout.org/;
       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;
  }
}