nginx 实现路由重写和隐藏index.php

1.nginx配置 路径:/etc/nginx/conf.d

#
# A virtual host using mix of IP-, name-, and port-based configuration
#

server {
    listen       80;
    server_name  test.ifencai.com;
    root   /usr/local/website/ifencai/test;

    location / {
    root   /usr/local/website/ifencai/test;
    index index.php index.html index.htm;
        if (!-e $request_filename) {
        rewrite ^(.*)$ /index.php?s=$1 last;
        break;
    }
   
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   /usr/share/nginx/html;
        }
 
       # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
        location ~ .php$ {
        root   /usr/local/website/ifencai/test;
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            #定义变量 $path_info ,用于存放pathinfo信息
                set $path_info "";
                #定义变量 $real_script_name,用于存放真实地址
                set $real_script_name $fastcgi_script_name;
                #如果地址与引号内的正则表达式匹配
                if ($fastcgi_script_name ~ "^(.+?\.php)(/.+)$") {
                        #将文件地址赋值给变量 $real_script_name
                        set $real_script_name $1;
                        #将文件地址后的参数赋值给变量 $path_info
                        set $path_info $2;
                }
                #配置fastcgi的一些参数
                fastcgi_param SCRIPT_FILENAME $document_root$real_script_name;
                fastcgi_param SCRIPT_NAME $real_script_name;
                fastcgi_param PATH_INFO $path_info;
                #fastcgi_param  SCRIPT_FILENAME  /usr/local/website/ifencai/test$fastcgi_script_name;
                include        fastcgi_params;
        }
 
     }
     
}

 

2.更改路由模式
'URL_MODEL' =>2, //路由层级
/usr/local/website/ifencai/Home/ifc_home/Home/Conf
 
3.在公共配置里配置默认模块,2行都不能少 ,顺序随意
/usr/local/website/ifencai/Home/ifc_home/Common/Conf
return array(
 
  'DEFAULT_MODULE'     => 'Home',
  'MODULE_ALLOW_LIST'  => array('Home'),
);

 

转载于:https://my.oschina.net/xianyuos/blog/394046

你可能感兴趣的:(nginx 实现路由重写和隐藏index.php)