nginx支持codeigniter的pathinfo模式url重写配置写法示例
开发环境
codeigniter2.14
PHP5.4.18
nginx1.4.2
Codeigniter配置
打开codeignite的config.php文件修改如下:
$config['uri_protocol']="PATH_INFO";
nginx配置
打开nginx的配置文件nginx.conf文件,修改如下:
#我使用的是虚拟主机配置 server{ listen80; server_namedev.example.com; rewrite_logon; root/www/web/htdocs/dev.example.com; indexindex.phpindex.htmlindex.htm; location/{ indexindex.phpindex.htmlindex.htm; } location~\.php($|/){ fastcgi_pass127.0.0.1:9000; fastcgi_indexindex.php; fastcgi_split_path_info^(.+\.php)(.*)$; fastcgi_paramPATH_INFO$fastcgi_path_info; fastcgi_paramSCRIPT_FILENAME$document_root$fastcgi_script_name; includefastcgi_params; } if(!-e$request_filename){ rewrite^/(.*)$/index.php/$1last; break; } location~/\.ht{ denyall; } }
现在就可以用pathinfo模式访问了,如:
http://dev.example.com/app/welcome/test