求Nginx 的大神给我解释下 .. 这个conf 的意思

gclove
  • 1.4k
location ~ \.php {
        # try_files    $uri =404;

        fastcgi_index  /index.php;
        fastcgi_pass   127.0.0.1:9000;

        include fastcgi_params;
        fastcgi_split_path_info       ^(.+\.php)(/.+)$;
        fastcgi_param PATH_INFO       $fastcgi_path_info;
        fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    }

主要是 include 下面的几行哦 .

回复
阅读 2.2k
1 个回答

Nginx 自身没有自动产生 PATH_INFO 的功能,这就让一些通过 $_SERVER['PATH_INFO'] 来进行调度的框架不能正常进行路由调度。而 include 之下的这段代码,就是进行 PATH_INFO 的侦测,并写入到 Server 参数中传给 PHP。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
宣传栏