小弟用的ci框架并分组,也就是controllers下面分了admin和www,下面的配置是www的入口
ps:我计划两个入口用二级域名区分开来:
www.baidu.dd
admin.baidu.dd
server {
        listen       80;
        server_name  www.baidu.dd;
index index.php;
root   /baidu/www;

error_log  /baidu/www/error.log  info;
        charset utf-8;
        location /{
               if (-e $request_filename) {
                       break;
               }
               if (!-e $request_filename) {
                       rewrite ^/(.*)$ /index.php/www/$1 last;
                       break;
               }
}
 
location ~ .+\.php($|/) {
fastcgi_split_path_info ^((?U).+.php)(/?.+)$;
fastcgi_param   SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param   PATH_INFO               $fastcgi_path_info;
fastcgi_param   PATH_TRANSLATED $document_root$fastcgi_path_info;
fastcgi_pass   127.0.0.1:9000;
include        fastcgi_params;
}
    }
求助,rewrite中/index.php/www/$1这玩意不灵啊,是不是其他还有哪儿搞错啦?

解决方案 »

  1.   


    server {
            listen          80;
            server_name     www.baidu.dd;
            index           index.php index.html;
            root            /mnt/baidu/www;        location ~.*\.(php)?$
            {
                    fastcgi_pass    127.0.0.1:9000;
                    fastcgi_index   index.php;
                    include         fastcgi.conf;
            }
    }server {
            listen          80;
            server_name     admin.baidu.dd;
            index           index.php index.html;
            root            /mnt/baidu/admin;        location ~.*\.(php)?$
            {
                    fastcgi_pass    127.0.0.1:9000;
                    fastcgi_index   index.php;
                    include         fastcgi.conf;
            }
    }这是在nginx里的设置,首先,如果你是在虚拟机里面的,root路径要从/mnt开始,文件夹也是通过虚拟机共享文件进去的。