Не могу сделать перенаправление ! Помогите !

johnby nginx-forum на nginx.us
Ср Авг 25 15:06:17 MSD 2010


Добрый день форумучане, прошу вашей
помощи и поддержки....
Недавно всё-таки установил себе на VDS
вместо апача NGINX. Работает.  С сайта
http://wiki.nginx.org/NginxJoomla взял конфигурацию,
настроил урлы и всё заработало. Но вот
одно НО... у меня был на апаче в файле
.htaccess дополнительный приписок для
"переводчика" сайта.
Вот это содержание 
[code]
# gtranslate config
        RewriteRule ^([a-z]{2})/(.*)$
/gtranslate/translate.php?lang=$1&url=$2 [L,QSA]
        RewriteRule ^([a-z]{2})$ /gtranslate/translate.php?lang=$1
[L,QSA]
        RewriteRule ^(zh-CN)/(.*)$
/gtranslate/translate.php?lang=$1&url=$2 [L,QSA]
        RewriteRule ^(zh-CN)$ /gtranslate/translate.php?lang=$1 [L,QSA]
        RewriteRule ^(zh-TW)/(.*)$
/gtranslate/translate.php?lang=$1&url=$2 [L,QSA]
        RewriteRule ^(zh-TW)$ /gtranslate/translate.php?lang=$1 [L,QSA]
[/code]
Мне нужно этот кусок вставить на машину
с NGINX, но никак не могу его правильно
оформить и опубликовать. По идеи
содержание на NGINX должно выглядеть так
[code]
 rewrite ^/([a-z]\{2\})/(.*)$ /gtranslate/translate.php?lang=$1&url=$2
last;
 rewrite ^/([a-z]\{2\})$ /gtranslate/translate.php?lang=$1 last;
 rewrite ^/(zh-CN)/(.*)$ /gtranslate/translate.php?lang=$1&url=$2 last;
 rewrite ^/(zh-CN)$ /gtranslate/translate.php?lang=$1 last;
 rewrite ^/(zh-TW)/(.*)$ /gtranslate/translate.php?lang=$1&url=$2 last;
 rewrite ^/(zh-TW)$ /gtranslate/translate.php?lang=$1 last;
[/code]
Но куда вставить его в какой локейшн  я
не знаю :(. Нужна помощь специалистов... 
[b]Привожу код конфига для домена[/b]
[code]
server {
  listen      80;
server_name domen.name;

access_log  /home/public_html/pmr.name/nginx_pmr.name-access.log;
error_log    /home/public_html/pmr.name/nginx_pmr.name-error.log;

  large_client_header_buffers 4 8k; # prevent some 400 errors

root   /home/public_html/pmr.name/public;
index index.php index.html index.htm;

location / {
expires 30d;
error_page 404 = @joomla;
log_not_found off;
}

location @joomla {
    rewrite ^(.*)$ /index.php?q=$1 last;
  }

# Static Files
 location ~* ^.+.(jpg|jpeg|gif|css|png|js|ico)$ {
 access_log        off;
 expires           max;
 }

location /gos/ { #дописочка для своих нужд, она
работает
rewrite ^/gos/(.*)$  /gos.php?url=$1 last;
}

location ~ \.php$ {
   try_files $uri @joomla;
    fastcgi_pass   127.0.0.1:9000;
    fastcgi_index  index.php;
    include /etc/nginx/fastcgi_params;
    fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
  }
}
[/code]
[b]и ещё код конфига  nginx.conf[/b]
[code]
user www-data;
worker_processes  2;

error_log  /var/log/nginx/error.log;
pid        /var/run/nginx.pid;

events {
    worker_connections 1024;
    # multi_accept on;
}

http {
    include       /etc/nginx/mime.types;
    access_log	/var/log/nginx/access.log;

    log_format main      '$remote_addr - $remote_user [$time_local]  '
      '"$request" $status $bytes_sent '
      '"$http_referer" "$http_user_agent" '
      '"$gzip_ratio"';
 
    log_format download  '$remote_addr - $remote_user [$time_local]  '
      '"$request" $status $bytes_sent '
      '"$http_referer" "$http_user_agent" '
      '"$http_range" "$sent_http_content_range"';
 
    client_header_timeout  3m;
    client_body_timeout    3m;
    send_timeout           3m;
 
    client_header_buffer_size    1k;
    large_client_header_buffers  4 4k;

    sendfile        on;
    tcp_nopush     on;

    #keepalive_timeout  0;
    #keepalive_timeout  5;
    keepalive_timeout  75 20;
    tcp_nodelay        on;
   
    include /etc/nginx/conf.d/*.conf;
    include /etc/nginx/sites-enabled/*;
}

[/code]

Помогите правильно реализовать
настройку и вставку кода
 [size=small]rewrite ^/([a-z]\{2\})/(.*)$
/gtranslate/translate.php?lang=$1&url=$2 last;
 rewrite ^/([a-z]\{2\})$ /gtranslate/translate.ph...........[/size]

Posted at Nginx Forum: http://forum.nginx.org/read.php?21,123448,123448#msg-123448




Подробная информация о списке рассылки nginx-ru