35

所有外部 URL 看起来都像 'module/action?key1=param1'。无法进行定制——但速度很快。不同的是第一个使用PHP的GET,第二个使用PATH_INFO。

看了PATH_INFO好几遍,还是不知道具体是什么。它有什么作用?

4

2 回答 2

47

实际上,PATH_INFO与服务 PHP 页面的 Apache Web 服务器有关,而不是 PHP 本身。

PATH_INFO是 Apache 在开启AcceptPathInfo指令时设置的环境变量。无论请求被接受还是被拒绝,它将包含跟随实际文件名或现有目录中不存在的文件的尾随路径名信息。然后将环境变量传递给负责渲染页面的 Apache/CGI 模块。

该变量可在 PHP 中使用$_SERVER['PATH_INFO'].

例如,假设位置/test/指向仅包含单个文件的目录here.html。然后请求/test/here.html/more/test/nothere.html/more都收集/morePATH_INFO

Apache 核心文档:AcceptPathInfo指令

于 2010-02-14T17:19:41.433 回答
22
于 2012-02-17T08:32:08.990 回答