Home  >  Article  >  php教程  >  解析CI即CodeIgniter框架在Nginx下的重写规则

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

WBOY
WBOYOriginal
2016-06-13 11:51:53777browse

最近研究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;
    }
}


Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn