Re: Как правильно оформить rewrite при изменение структуры сайта?
Igor Sysoev
igor на sysoev.ru
Сб Авг 7 14:34:41 MSD 2010
On Sat, Aug 07, 2010 at 06:24:45AM -0400, idrum wrote:
> не могу сделать простейший rewrite.
> поменялась структура сайт и поэтому
> необходимо перенаправлять
> пользователей c http://site.ru/viewforum.php?id=3 на
> http://site.ru/forums/view/3
>
> нынешний конфиг
>
> [code]
> user www;
> worker_processes 1;
> timer_resolution 100ms;
> worker_rlimit_nofile 8192;
> worker_priority -5;
>
> pid /var/run/nginx.pid;
>
> events {
> worker_connections 2048;
> use kqueue;
> }
>
> http {
> include mime.types;
> default_type application/octet-stream;
>
> sendfile on;
> tcp_nopush on;
> tcp_nodelay on;
> keepalive_timeout 65;
> server_tokens off;
> client_max_body_size 10M;
> charset utf-8;
>
> upstream backend {
> server unix:/tmp/fcgi.sock;
> }
>
> server {
> listen 80;
> server_name site.ru;
> root /home/site.ru/data/www/site.ru;
>
> rewrite ^/viewforum.php?id=(.*)$ /forums/view/$1 permament; #
> не работает
>
> location / {
> try_files /coffee_brake/index.html @codeigniter;
> index index.php;
> }
>
> location @codeigniter {
> include /usr/local/etc/nginx/fastcgi_params_copy;
>
> fastcgi_param SCRIPT_FILENAME $document_root/index.php;
> fastcgi_param QUERY_STRING $uri;
>
> fastcgi_pass backend;
> }
>
> location ~* ^(?!/phpmyadmin/).+\.(jpeg|jpg|gif|png|css|js|ico)$
> {
> root /home/site.ru/data/www/site.ru/system/application;
> }
> }
> }
> [/code]
rewrite ^/viewforum.php$ /forums/view/$arg_id permament;
но лучше так:
location = /viewforum.php {
rewrite ^ /forums/view/$arg_id permament;
# или так
#return 301 http://site.ru/forums/view/$arg_id;
}
--
Igor Sysoev
http://sysoev.ru/en/
Подробная информация о списке рассылки nginx-ru