让nginx 支持PATH_INFO

发布于 2022-10-15 10:07:43 字数 1727 浏览 18 评论 0

很多PHP框架默认使用PHP的PATH_INFO 来进行URL重写
当用Nginx作为http服务器的时候,就出现问题了,愿意是Nginx为定义PATH_INFO这个变量,我们想要使用PHP框架的PATH_INFO重写时候,必须定义这个变量

代码比较简单

  1. location ~ \.php($|/) {
  2.                 root           /www/test;
  3.                 set $script     $uri;
  4.                 set $path_info  "";
  5.                 if ($uri ~ "^(.+?\.php)(/.*)$") {
  6.                     set $script     $1;
  7.                     set $path_info  $2;
  8.                 }
  9.                 fastcgi_index        index.php;
  10.                 fastcgi_param   SCRIPT_FILENAME $document_root$fastcgi_script_name;
  11.                 fastcgi_param   PATH_INFO       $path_info;
  12.                 fastcgi_pass    unix:/tmp/php-fpm.sock;
  13.                 include        fastcgi_params;
  14.             }

复制代码这样PHP框架就可以使用PATH_INFO 重写了

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

吃→可爱长大的 2022-10-22 10:07:43

鄙人不用框架,所以不存在这个问题。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文