I'm trying to make some rewrite rules (marked in red) for files that exist on the server(viewforum.php, viewtopic.php), but i can't get them to work ? Any idea why they don't work?
[code]
set $test "";
if ($host ~* "(^|\.)example\.com$") {
set $test MF;
}
if ($test = MF) {
set $example "1";
}
if ($example = 1) {
rewrite ^/topic/([0-9]+)$ http://www.example.com/topic/$1/ permanent;
rewrite ^/post/([0-9]+)(\#p([0-9]+))?/?(\?sid=(.*))?$ /viewtopic.php?p=$1 last;
#
rewrite ^/forum/([0-9]+)/?(\?sid=(.*))?$ /viewforum.php?f=$1 last;
rewrite ^/forum/([0-9]+)/([0-9]+)/?(\?sid=(.*))?$ /viewforum.php?f=$1&start=$2 last;
rewrite ^/topic/([0-9]+)/?(\?sid=(.*))?$ /viewtopic.php?t=$1 last;
rewrite ^/topic/([0-9]+)/([0-9]+)/?(\?sid=(.*))?$ /viewtopic.php?t=$1&start=$2 last;
rewrite ^/f([0-9]+)/t([0-9]+)/p([0-9]+)(\#p([0-9]+))?/?(\?sid=(.*))?$ /viewtopic.php?f=$1&t=$2&p=$3 last;
rewrite ^/topic/([0-9]+)/print/?(\?sid=(.*))?$ /viewtopic.php?t=$1&view=print last;
rewrite ^/user/([0-9]+)/?(\?sid=(.*))?$ /memberlist.php?mode=viewprofile&u=$1 last;
[color=#FF0000]rewrite ^/viewforum.php\?f=([0-9]+)$ http://www.example.com/forum/$1/ permanent;
rewrite ^/viewforum.php\?f=([0-9]+)&start=([0-9]+)$ http://www.example.com/forum/$1/$2/ permanent;
rewrite ^/viewtopic.php\?t=([0-9]+)$ http://www.example.com/topic/$1/ permanent;
rewrite ^/viewtopic.php\?t=([0-9]+)&start=([0-9]+)$ http://www.example.com/topic/$1/$2/ permanent;[/color]
}
[/code]