用nginx取代Apache以后,重新规则的如何解决?

用nginx取代Apache以后,重新规则的如何解决?

我在apache里面有以下规则,请问如何写nginx的配置文件?

apache httpd.conf
...
RewriteEngine on
RewriteCond $1 !^(index\.php|images|robots\.txt)
RewriteRule ^(.*)$ /index.php/$1 [L]
...


我在nginx里面写如下的规则相对应:
        location ~ !^/(index\.php|robots\.txt|images|js|css)/{
                rewrite ^(.*)$ /index.php/$1 break;
        }

但是不好用。
错误日志中显示,这样的规则使nginx的root设定失效了。也就是说,文件变成了以绝对目录访问的方式。
具体讲,假设我的webroot的目录是/var/www
我配置好nginix以后,访问/var/www的php文件,没有问题。
一旦通过上面的rewrite以后,访问上面列出的文件夹里面的文件,就变成了:
/var/www/images/xxx.jpg
这样显示是错误的。


有谁遇到并解决这种问题么?
谢谢了。
自己顶一下。

有人知道么?