生效的open_basedir限制,位于第0行未知位置?

4

我不断收到不同时间的各个页面的这些消息。第0行是什么意思?现在我正在使用免费域名(子域)和免费托管来测试我的网站。 为了保护隐私,我在下面放置了这个符号 -> 来替换真实名称。我的主机甚至无法解决这个问题。我只能访问账户中的文件和文件夹。我想我的托管类型不好吗?谢谢。

警告:Unknown: open_basedir限制生效。 文件(/home/v1/sweet/123/htdocs/subscribe.php)不在 允许的路径中: (/php_sessions:/tmp:/var/www/errors:/home/v1/bill/t/htdocs)于位置未知 第0行

警告:Unknown: failed to open stream: 操作不允许于位置未知 第0行

致命错误:Unknown: 打开所需的文件失败 '/home/v1/sweet/123/htdocs/subscribe.php' (include_path='.')于位置未知 第0行


1
我认为使用“..”来隐藏目录名称非常令人困惑,因为它是父目录的名称... - Matti Virkkunen
在第0行没有可检查的代码,这对我来说毫无意义。 - Holly
Matti-抱歉我不得不放它,因为它有我的用户ID.. - Holly
1
那么请使用其他东西代替 .. - Matti Virkkunen
好的,很好的想法。我会更改它。 - Holly
1个回答

3

on line 0 的错误提示表示 open_basedir 值过于严格,PHP无法打开脚本文件本身。

可以看到,/home/v1/sweet 不在 /home/v1/bill/ 目录下的 open_basedir 范围内。


嗨,这是在 PHP 配置中针对 open_basedir 的内容 → /php_sessions:/tmp:/var/www/errors:/home/ve/awd/uio/orange/htdocs - Holly
我在配置中没有看到 /home/v1/bill/。 - Holly
1
同样的规则适用:/home/v1不在/home/ve/之内。 - AndreKR
谢谢:)我需要一个允许我更改PHP配置的主机。我目前拥有的主机要求我购买昂贵的VPS来停止收到消息,而不是给我答案。我希望我能为你和Matti投+1票,但我无法投票。 - Holly
2
实际上,在典型的共享主机配置中,open_basedir 是您的网站空间,即使是便宜的共享主机也是如此。如果您的脚本位于 /home/v1/sweet/123/htdocs/subscribe.php,那么网站空间的根目录可能是 /home/v1/sweet/123/htdocs/,如果他们在 open_basedir 中放置了 /home/ve/awd/uio/orange/htdocs,那肯定是他们的错误。 - AndreKR
谢谢,我现在更清楚了。是的,我看到这明显是他们的错误。我会在另一个主机上进行网站测试。 - Holly

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接