Правила rewrite для Gallery2 и nginx

По просьбе David Currie выкладываю правила rewrite для Gallery2, запущенной на связке nginx и php-fastcgi. Вот правила которые я пользую для себя.

  1.         location /v/ {
  2.             rewrite ^/v/(.*)$ /wp-gallery2.php?g2_view=core.ShowItem&g2_path=$1;
  3.         }
  4.         location /d/ {
  5.         #    rewrite ^/d/([0-9]{1,20})-([0-9]{1,20})/(.*)$ /gallery2/index.php?g2_view=core.DownloadItem&g2_itemId=$1&g2_serialNumber=$2&g2_fileName=$3;
  6.             rewrite ^/d/([0-9]+)-([0-9]+)/(.*)$ /gallery2/index.php?g2_view=core.DownloadItem&g2_itemId=$1&g2_serialNumber=$2&g2_fileName=$3;
  7.         }
  8.  
  9.         location /rss/ {
  10.             rewrite ^/rss/(.*)$ /wp-gallery2.php?g2_view=rss.Render&g2_name=$1;
  11.         }
  12.         location /srss/ {
  13.              rewrite ^/srss/(.*)$ /wp-gallery2.php?g2_view=rss.Render&g2_name=$1;
  14.         }
  15.         location /c/add/ {
  16.             rewrite ^([0-9]+).html(.*)$ /wp-gallery2.php?g2_view=comment.AddComment&g2_itemId=$1;
  17.         }
  18.  
  19.         location /c/view/ {
  20.             rewrite ^/c/view/([0-9]+).html(.*)$ /wp-gallery2.php?g2_view=comment.ShowAllComments&g2_itemId=$1;
  21.         }
  22.  
  23.         location /admin/ {
  24.             rewrite ^/admin/(.*)$ /wp-gallery2.php?g2_view=core.SiteAdmin;
  25.         }
  26.         location /gallery2/ {
  27.             root /var/www/brainstorm/htdocs/;
  28.             index index.php index.html index.htm;
  29.             location ~ /.ht {
  30.                 deny all;
  31.             }
  32.             location /gallery2/images/{
  33.                  root /var/www/brainstorm/htdocs/;
  34.             }
  35.             location /gallery2/core/ {
  36.                 root /var/www/brainstorm/htdocs/;
  37.             }
  38.             location /gallery2/modules/ {
  39.                 root /var/www/brainstorm/htdocs/;
  40.             }
  41.             rewrite ^/gallery2/v/(.*)$ /gallery2/index.php?g2_view=core.ShowItem&g2_path=$1;
  42.             rewrite ^/gallery2/d/([0-9]+)-([0-9]+)/(.*)$ /gallery2/index.php?g2_view=core.DownloadItem&g2_itemId=$1&g2_serialNumber=$2&g2_fileName=$3;
  43.             rewrite ^/gallery2/rss/(.*)$ /gallery2/index.php?g2_view=rss.Render&g2_name=$1;
  44.             rewrite ^/gallery2/srss/(.*)$ /gallery2/index.php?g2_view=rss.SimpleRender&g2_itemId=$1;
  45.             rewrite ^/gallery2/c/add/([0-9]+).html(.*)$ /gallery2/index.php?g2_view=comment.AddComment&g2_itemId=$1;
  46.             rewrite ^/gallery2/c/view/([0-9]+).html(.*)$ /gallery2/index.php?g2_view=comment.ShowAllComments&g2_itemId=$1;
  47.             rewrite ^/gallery2/admin/(.*)$ /gallery2/index.php?g2_view=core.SiteAdmin;
  48.             rewrite ^/gallery2/sitemap(.*)$ /gallery2/index.php?g2_view=sitemap.Sitemap;
  49.         }
  50.         location / {
  51.             root /var/www/brainstorm/htdocs;
  52.             index index.php index.html index.htm;
  53.             #wordpress bullshit
  54.             if (!-e $request_filename ) {
  55.                     rewrite ^(.*)$ /index.php;
  56.             }
  57.             rewrite ^/sitemap(.*)$ /wp-gallery2.php?g2_view=sitemap.Sitemap;
  58.         }
  59.         #nginx php configuraton goes later
  60.      ......