CI 即CodeIgniter框架在Nginx下的重写规则

最近研究CI框架,发现这个框架的路由功能在Nginx下有问题,报404错误,后来在网上查资料,

发现需要开启PATH_INFO。在nginx7.16以后貌似就支持PATH_INFO了,只需要在配置文件中开启即可。


打开nginx.conf文件,在你的虚拟主机下增加重写规则,代码如下:

server {
 
            listen            80;
 
            server_name      www.ci.com;
 
            location / {
 
                    root    d:/www/Codeigniter_2.0.1/;
 
                    index  index.html index.htm index.php;
 
          rewrite ^/$/index.php last;
 
          rewrite^/(?!index\.php|robots\.txt|images|js|styles)(.*)$ /index.php/$1last;
 
            }
 
    location ~^(.+\.php)(.*)$ {
 
          root          D:/www/Codeigniter_2.0.1/;
 
          fastcgi_index      index.php;
 
          fastcgi_split_path_info ^(.+\.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:9002;
 
          include      fastcgi_params;
 
    }
}

你可能感兴趣的:(CI 即CodeIgniter框架在Nginx下的重写规则)