【发布时间】:2010-04-08 15:59:57
【问题描述】:
在虚拟主机服务器上,我将每个虚拟主机的 open_basedir 设置为 .:/path/to/vhost/web:/tmp:/usr/share/pear。我有一个运行 WordPress 的客户,他因此抱怨 open_basedir 错误: PHP 警告:file_exists() [function.file-exists]:open_basedir 限制生效。文件(/var/lib/php/session/sess_42k7jn3vjenj43g3njorrnrmf2)不在允许的路径内:(.:/path/to/vhost/web:/tmp:/usr/share/pear) 因此 PHP 会话 save_path 不包含在 open_basedir 中,但服务器上所有站点的会话似乎除了在这个间歇性实例中工作正常。我认为可能是默认会话处理程序忽略了 open_basedir 而这个警告是由 WP 直接访问会话文件引起的。
但是,据我所知,PHP 5.2.4 将 open_basedir 检查引入了 session.save_path 配置:http://www.php.net/ChangeLog-5.php#5.2.4 (我使用的是 PHP 5.2.13)。
有什么想法吗?
【问题讨论】:
-
这不是一个编程问题。应该搬到旧金山。
-
对不起,因为它与 PHP 相关,我在这里发布,但我可以看到它可能与 SF 更相关,将在那里发布。我需要结束这个问题吗?
标签: php