【发布时间】:2013-05-23 01:31:32
【问题描述】:
在 Windows 服务器上运行 PHP 5.3.1,我必须修改 PHP 脚本以访问网络共享上的 XML 文件。由于各种原因,文件无法放置在 PHP 服务器上,并且我不允许在 PHP 服务器上创建映射驱动器,因此我必须修改 PHP.ini 中的 open_basedir 参数以包含共享的 UNC 路径,例如:
open_basedir = "E:\inetpub\;E:\DB_HubDataFiles\;\\stdmfps01\inter-departements$\CVSC-CDT-Estimation-Cedule\"
但是,当我尝试访问共享上的文件时,我收到“open_basedir 限制生效”错误。我正在尝试按如下方式访问文件:
$jobfilename = "//stdmfps01/inter-departements$/CVSC-CDT-Estimation-Cedule/" .$job . ".xml";
if (file_exists($jobfilename)) {
$jobxml = simplexml_load_file($jobfilename);
etc...
我确信这不是权限问题,而且无论如何该错误表明 open_basedir 有问题。所以我的问题是:
- open_basedir 是否在 Windows 下处理 UNC 路径(我看到过关于此的相互矛盾的陈述)?
- 如果是这样,是不是我的语法有问题?
- 除了使用 open_basedir 之外,我还有其他选择吗?
谢谢。
【问题讨论】:
标签: php