在网页中的相对路径,PHP报出的将是绝对路径.
如果:
Linux下apache的/路径设为/var/httpd/www/
windows下apache的/路径设为c:/apache/htdocs/
当PHP出错报出时将分别为( 设为index.php出错)
/var/httpd/www/index.php
c:\apache\htdocs\index.php还有就是虚拟目录设置 include,lib等的路径在php.ini中各自的设置不同.(linux下没有盘符一说).
所以设置和OS都有一些原因.

解决方案 »

  1.   

    对不起,我没有说明白.
    比如我有两个文件:
    /file1.php
    /tmp/file2.php
    我在file1.php中include("tmp/file2.php")
    file2.php中有一个fopen("sample.txt")
    在window2k中打开的是/下的sample.txt文件
    在linux中打开的确是/tmp下的sample.txt
    这是什么地方没有设置对吗?
      

  2.   

    我的php是cgi方式工作
    我觉得是php的
    当前工作目录在两个环境下不一样
    怎么改呢?
      

  3.   

    可能是版本的原因.早期的版本由于不支持include的远程调用.所以被调用的文件以它所在的目录为当前目录.
    引入远程调用后,可能是考虑到安全问题.改成了调用者的当前目录.
    (以上仅为猜测)如果不是请告诉我一声.
      

  4.   

    我觉得也是这么个问题,但令人抓狂的是:php同为4.2.3,并且php.ini文件的设置都一样
    ~!@#$%^&*……
      

  5.   

    netvt(网路维他),你说会不会是webserver的原因?
      

  6.   

    应该不会是webserver的原因.
    php4.2.3:::::
    windows版的PHP在4.3.0以后才引入远程调用.而linux下的可能要早一些.
    不明白.
      

  7.   

    还是不太明白,又懒得去看php源代码
    那位大虾再指点一下
      

  8.   

    看到我的phpinfo中不支持virtual directory,是不是这个缘故