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