nginx支持codeigniter的pathinfo模式url重写配置写法示例

(编辑:jimmy 日期: 2024/12/26 浏览:2)

开发环境

codeigniter 2.14
PHP 5.4.18
nginx 1.4.2

Codeigniter配置

打开 codeignite 的 config.php 文件修改如下:

$config['uri_protocol'] = "PATH_INFO";

nginx配置

打开 nginx 的配置文件 nginx.conf 文件,修改如下:

# 我使用的是虚拟主机配置
server {
  listen  80;
  server_name dev.example.com;

  rewrite_log on;

  root /www/web/htdocs/dev.example.com;
  index index.php index.html index.htm;

  location / {
    index index.php index.html index.htm;
  }

  location ~ \.php($|/) {
   fastcgi_pass 127.0.0.1:9000;
   fastcgi_index index.php;
   fastcgi_split_path_info ^(.+\.php)(.*)$;
   fastcgi_param PATH_INFO $fastcgi_path_info;
   fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
   include  fastcgi_params;
  }

  if (!-e $request_filename) {
   rewrite ^/(.*)$ /index.php/$1 last;
   break;
  }

  location ~ /\.ht {
    deny all;
  }
}

现在就可以用pathinfo模式访问了,如:

http://dev.example.com/app/welcome/test

一句话新闻

高通与谷歌联手!首款骁龙PC优化Chrome浏览器发布
高通和谷歌日前宣布,推出首次面向搭载骁龙的Windows PC的优化版Chrome浏览器。
在对骁龙X Elite参考设计的初步测试中,全新的Chrome浏览器在Speedometer 2.1基准测试中实现了显著的性能提升。
预计在2024年年中之前,搭载骁龙X Elite计算平台的PC将面世。该浏览器的提前问世,有助于骁龙PC问世就获得满血表现。
谷歌高级副总裁Hiroshi Lockheimer表示,此次与高通的合作将有助于确保Chrome用户在当前ARM兼容的PC上获得最佳的浏览体验。