nginx实现thinkphp伪静态的配置例子

程序目录环境说明

http://www.123.com/admingm指向到/data0/htdocs/www.123.com/admingm目录里

admingm目录里放的是tp的框架:Admin、Public、ThinkPHP、index.php,

nginx如果需要实现伪静态,需要自己编写rewrite,以下是我自己编写的,希望对需要的人能有点帮助。

1、php.ini  文件里 改了一个地方把";cgi.fix_pathinfo=1 "前面的“;”去掉。

2、nginx的server配置

server
  {
    listen       80;
    server_name abc.123.com;
    root  /data0/htdocs/abc.123.com;
    index index.html index.htm index.php;

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

    location ~ .*\.php(.*)$
    {
    set $script    $uri;
    set $path_info  "/";
    if ($uri ~ "^(.+\.php)(/.+)") {
        set $script     $1;
        set $path_info  $2;
    }
    fastcgi_pass 127.0.0.1:9000;
    fastcgi_index index.php;
    include fastcgi_params;
    fastcgi_param PATH_INFO $path_info;
    fastcgi_param SCRIPT_FILENAME  $document_root/$script;
    fastcgi_param SCRIPT_NAME $script;
    }

    location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
    {
    expires      15d;
    }

    location ~ .*\.(js|css)?$
    {
    expires      2d;
    }

    access_log  off;
  }

 

如果有错误,欢迎提出来,大家一起讨论!

你可能感兴趣的:(nginx,thinkphp,伪静态,TP)