大家好。
我有两个文件一个是phpinfo.php 里面只有
<? phpinfo();?>另外一个文件是 test.php 里面只有
<? echo $_SERVER['PATH'];?>在命令行下面,我用phpinfo页面里的 User/Group 的用户名 登陆
执行php test.php 输出的path 和 和在浏览器里运行http://localhost/test.php 输出的path
内容部一致,有人知道原因么?明明是同一个用户名一个在命令行下执行,一个用webpage 执行
区别就是一个通过apache,一个没有,但是我也是用的apache 的httpd.conf里的用户名啊。
为什么输出的path不一致呢。
请大家帮忙看下,谢谢!!
我有两个文件一个是phpinfo.php 里面只有
<? phpinfo();?>另外一个文件是 test.php 里面只有
<? echo $_SERVER['PATH'];?>在命令行下面,我用phpinfo页面里的 User/Group 的用户名 登陆
执行php test.php 输出的path 和 和在浏览器里运行http://localhost/test.php 输出的path
内容部一致,有人知道原因么?明明是同一个用户名一个在命令行下执行,一个用webpage 执行
区别就是一个通过apache,一个没有,但是我也是用的apache 的httpd.conf里的用户名啊。
为什么输出的path不一致呢。
请大家帮忙看下,谢谢!!
是操作系统环境变量 PATH 的值,同一台机器自然是一样的
当前脚本所在文件系统(不是文档根目录)的基本路径。这是在服务器进行虚拟到真实路径的映像后的结果。注意: PHP 4.3.2 之后,PATH_TRANSLATED 在 Apache 2 SAPI 模式下不再和 Apache 1 一样隐含赋值,而是若 Apache 不生成此值,PHP 便自己生成并将其值放入 SCRIPT_FILENAME 服务器常量中。这个修改遵守了 CGI 规范,PATH_TRANSLATED 仅在 PATH_INFO 被定义的条件下才存在。Apache 2 用户可以使用 httpd.conf 中的 AcceptPathInfo On 来定义 PATH_INFO。
/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/test/bin这是test用户登录PATH.这是以root身份启动apache, apache切换daemon daemon的PATH:[User:root Time:14:24:44 Path:~]$ echo $PATH
/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin有一些区别的。