Nginx and Memcached server block config file Oct 21, 2014 Used for my Grebe development code at grebe.soupmode.com ######## # GREBE ######## server { listen 80; server_name grebe.soupmode.com; location ~ ^/(css/|javascript/|images/) { root /home/grebe/Grebe/root; access_log off; expires max; } location /api/v1 { root /home/grebe/Grebe/root/api/v1; index grebeapi.pl; rewrite ^/(.*)$ /grebeapi.pl?query=$1 break; fastcgi_pass 127.0.0.1:8999; fastcgi_index grebeapi.pl; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } set $use_cache 1; set $post_id 0; if ($http_cookie ~* "grebeuserid=[1-9]+") { set $use_cache 0; } if ($request_uri ~ "^/([0-9]+)") { set $post_id $1; set $use_cache "${use_cache}1"; } location / { default_type text/html; if ( $use_cache = 11 ) { set $memcached_key "grebe.soupmode.com-$post_id"; memcached_pass 127.0.0.1:11211; } error_page 404 = @fallback; } location @fallback { root /home/grebe/Grebe/root; index grebe.pl; rewrite ^/(.*)$ /grebe.pl?query=$1 break; fastcgi_pass 127.0.0.1:8999; fastcgi_index grebe.pl; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } } code=yes