xgnic 发表于 2018-2-10 23:46:45


                     
方法一:通过伪静态
Rewrite
重写来实现pathinfo模式
伪静态规则为:

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


方法二:修改网站配置文件/usr/local/nginx/conf/*.conf
以下做参考:
将这段(可能内容不一样,请变通使用)

   
      
            location ~ [^/]\.php(/|$)
                        {
                            # comment try_files $uri =404; to enable pathinfo
                            try_files $uri =404;
                            fastcgi_passunix:/tmp/php-cgi.sock;
                            fastcgi_index index.php;
                            include fastcgi.conf;
                            #include pathinfo.conf;
                        }
      
   

修改为:



   
      
            location ~ \.php {
                            #fastcgi_pass 127.0.0.1:9000;   
                            #fastcgi_pass unix:/dev/shm/php-cgi.sock;   
                            fastcgi_passunix:/tmp/php-cgi.sock;
                            fastcgi_index index.php;
                            include fastcgi.conf;
                            set $real_script_name $fastcgi_script_name;
                            if ($fastcgi_script_name ~ "^(.+?\.php)(/.+)$") {
                            set $real_script_name $1;
                            set $path_info $2;
                        }
                            fastcgi_param SCRIPT_FILENAME $document_root$real_script_name;
                            fastcgi_param SCRIPT_NAME $real_script_name;
                            fastcgi_param PATH_INFO $path_info;
                        }
      
   
页: [1]
查看完整版本: nginx下PHP开启pathinfo模式