当前位置 主页 > 服务器问题 > nginx问题汇总 >

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

    栏目:nginx问题汇总 时间:2019-03-11 16:55

    本篇文章是对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;
        }
    }