Tricky Rewrite rules.

HonDev Developer developerhondev at gmail.com
Thu Nov 22 15:05:35 MSK 2007


"WPMU only works without the port number in the URL."

server {
        listen       80;
                  server_name  xx.yy.com;
location / {
root   /home/monkeyking/public_html;
index  index.html;


if ($query_string !~ ".*s=.*") {
 rewrite ^(.*) /wp-content/cache/supercache/$http_host/$1index.html;
}

if ($http_cookie !~ "^.*comment_author_.*$" ) {
 rewrite ^(.*) /wp-content/cache/supercache/$http_host/$1index.html;
}

if ($http_cookie !~ "^.*wordpressuser.*$" ) {
 rewrite ^(.*) /wp-content/cache/supercache/$http_host/$1index.html;
}

if ($http_cookie !~ "^.*wp-postpass_.*$" ) {
 rewrite ^(.*) /wp-content/cache/supercache/$http_host/$1index.html
break;
}

error_page 404 = @tricky;
}

location @tricky {
proxy_pass      http://xx.yy.com:81;
}

error_page   500 502 503 504  /50x.html;
location = /50x.html {
root   html;
}
}

server {
listen       81;
server_name xx.yy.com;
access_log  logs/monkeyking.access.log;

location / {
root   /home/monkeyking/public_html;
index  index.php;

rewrite ^.*/files/(.*) /wp-content/blogs.php?file=$1;

if (!-e $request_filename) {
rewrite ^.+?(/wp-.*) $1 last;
rewrite ^.+?(/.*\.php)$ $1 last;
rewrite ^ /index.php last;
}
}





More information about the nginx mailing list