nginx реврайты

varcharik

Новичок
nginx реврайты

Друзья, помогите, плиз, кто чем может, не вижу ошибки никак:
первые два реврайта работают распрекрасно, третье - ни в какую.
в комментариях - примеры урла, которые должны получиться

# http://my.dev/forum/
location ~ ^/forum(/|)$ {
rewrite ^/forum(/|)$ /forum.php?media/forum/main break;

proxy_pass http://127.0.0.1:81;
proxy_set_header Host $host;
proxy_set_header X-Real-Ip $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
# http://my.dev/forum/59/article_name.html
location ~ ^/forum/ {
rewrite ^/forum/(\d+)/(.+)\.html$ /forum.php?media/forum/view/$1/$2 break;

proxy_pass http://127.0.0.1:81;
proxy_set_header Host $host;
proxy_set_header X-Real-Ip $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
#http://my.dev/forum/category/humor/
location ~ ^/forum/ {
rewrite ^/forum/(\w+)(/|)(.*)(/|)$ /forum.php?media/forum/$1/$2/ break;

proxy_pass http://127.0.0.1:81;
proxy_set_header Host $host;
proxy_set_header X-Real-Ip $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}


любые комментарии/идеи на вес золота
 

Dl

Новичок
http://sysoev.ru/nginx/docs/http/ngx_http_core_module.html#location
Затем проверяются регулярные выражения. В отличие от обычных строк, они не сортируются, а проверяются в порядке их следования в конфигурационном файле. Проверка регулярных выражений прекращается после первого же совпадения
 
Сверху