您好,欢迎访问一九零五行业门户网

PHP不能识别“./”和“/”相对路径,这是哪里配置不对?

php版本是5.3.29,这个程序之前在别的服务器上是正常的,现在移到新的服务器上,凡事有相对路径“./”和“../”的,都不能识别,提示类似下面的:
warning: include_once(../../../../../lang/zh-cn/calendar.php): failed to open stream: no such file or directory in d:\wwwroot\xingxing\web\admin\tpl\default\common\js\calendar\calendar.php on line 9
warning: include_once(): failed opening '../../../../../lang/zh-cn/calendar.php' for inclusion (include_path='.;c:\php\pear') in d:\wwwroot\xingxing\web\admin\tpl\default\common\js\calendar\calendar.php on line 9
notice: undefined variable: _lang in d:\wwwroot\xingxing\web\admin\tpl\default\common\js\calendar\calendar.php on line 11
warning: invalid argument supplied for foreach() in d:\wwwroot\xingxing\web\admin\tpl\default\common\js\calendar\calendar.php on line 11
文件路径是没有问题的,因为在别的服务器上都是正常的。如果把“./”改成dirname(__file__),程序也是可以正常运行的。但就是不能识别相对路径。请问这种情况是php哪里配置不对的吗,还是iis配置不对。
因为程序是别人做的,而且很多地方都使用了相对路径,所以很难一个个文件去把路径都改成绝对路径。
下面网盘链接是phpinfo()的代码:
https://pan.baidu.com/s/1qwzhaks
回复讨论(解决方案)
上面的代码输出的是:
c:\php
d:\wwwroot\xingxing\web
补充说明:在网站根目录下输出echo getcwd();显示出来的是:c:\php,而echo dirname(__file__);打印出来的是:d:\wwwroot\xingxing\web,而d:\wwwroot\xingxing\web
猜你就是用的 iis 
你需要在管理器的网站属性选项卡中 勾选 启用父路径
猜你就是用的 iis 
你需要在管理器的网站属性选项卡中 勾选 启用父路径
谢谢版主,以前iis6的时候我记得有这个设置的,但是现在用的是iis7,没找到这个选项,网上找到的也都是asp设置父路径的方法
我是用的iis7,win2008的,对服务器配置不懂,具体在哪里设置呢 http://www.softbar.com/blog/post/187.html
自己找找看吧,我几年前弄过。现在也记不清了
http://www.softbar.com/blog/post/187.html
自己找找看吧,我几年前弄过。现在也记不清了
这个是asp的设置呢,php的没见有,还是iis7就没有这玩意了 我猜你是权限不足的原因  比如 你php 网站绑定的是wwww/csdn  你来宾权限只到csdn 到不了wwww从而导致的
你试试给wwww 权限放大
你做了就知道!
问题解决了,你们两位说的问题都不是。我在网上下载一个同版本的php,然后把里面的php.ini替换了服务器上的php.ini就可以了。也不知道是php.ini里面哪里设置不对的。这个是阿里云的主机,php不知道是原来自带的还是后面装上的,反正因为这个设置就有各种各样的问题,连getcwd();都获取不到当前目录,获取到的是c:\php目录
其它类似信息

推荐信息