【问题标题】:PHP open_basedir errorPHP open_basedir 错误
【发布时间】:2014-05-31 17:48:02
【问题描述】:

今天一直在尝试安装php,在尝试启动我的网站时遇到了这个问题:

PHP Warning:  session_start(): open_basedir restriction in effect. File(C:\Windows\TEMP) is not within the allowed path(s): (C:\Users\Administrator\Desktop\website) in C:\Users\Administrator\Desktop\website\bootstrap.php on line 21

我已将我的 php.ini 设置为以下设置:

open_basedir = "C:\Users\Administrator\Desktop\website\"

upload_tmp_dir = "C:\Windows\TEMP\"

我尝试将upload_temp_dir 的目录更改为C:\Users\Administrator\Desktop\website\temp,但错误一直告诉我C:\Windows\TEMP 无效 - 即使我更改了目录。

有什么想法吗? 谢谢。

编辑:

现在我得到了:

PHP Warning:  session_start(): open(C:\Windows\TEMP\\sess_ca0ea257d89dfecd355e375071e30d7e, O_RDWR) failed: Permission denied (13) in C:\Users\Administrator\Desktop\website\bootstrap.php on line 21

PHP 警告:未知:open(C:\Windows\TEMP\sess_ca0ea257d89dfecd355e375071e30d7e, O_RDWR) 失败:第 0 行未知中的权限被拒绝 (13) PHP 警告:未知:无法写入会话数据(文件)。请在第 0 行的 Unknown 中验证 session.save_path 的当前设置是否正确 (C:\Windows\TEMP)

【问题讨论】:

  • 修改upload_tmp_dir后,是否重启了apache服务?

标签: php installation


【解决方案1】:

open_basedir 限制 PHP 在目录树中可以打开的文件。

你应该配置 session.save-path 到里面的某个路径

C:\Users\Administrator\Desktop\website\

或者将会话目录添加到 PHP 脚本可以访问的文件夹列表中

session.save-path = "C:\Windows\TEMP\"

open_basedir = "C:\Users\Administrator\Desktop\website\;C:\Windows\TEMP\"

【讨论】:

  • 好的,现在我的权限被拒绝了。我尝试了这两种方法。
  • 您的 Web 服务器运行的帐户是否对 C:\Windows\Temp 具有写入权限?
【解决方案2】:

注意:我必须从 Windows 10、PHP 7.3(在 php.ini 文件中)上的 open_basedir 路径中删除引号

不起作用:open_basedir = "C:\Windows\TEMP\;C:\Some\Other\Path\"

作品open_basedir = C:\Windows\TEMP\;C:\Some\Other\Path\

【讨论】:

    猜你喜欢
    • 2015-12-01
    • 2013-01-06
    • 2011-03-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-21
    • 2011-05-09
    相关资源
    最近更新 更多