Open_basedir限制奇数

时间:2011-09-28 16:42:09

标签: php open-basedir

我在PHP中遇到move_uploaded_file的问题,返回的错误消息告诉我open_basedir限制到位(我已设置)并且在我试图写的路径上to不在允许的路径中,但它是(并且清楚地显示在错误消息上)。

以前有人遇到过这个吗?

编辑:

抱歉,错误消息可能会有所帮助!:

  

未处理的错误(/var/www/vhosts/(myhost)/libs/imanager.php,226):2,   '... move_uploaded_file()[function.move-uploaded-file]:   open_basedir限制生效。   文件(在/ var / WWW /虚拟主机/(为myhost)/httpdocs/tributes/images/precrop/1317227884228.jpg)   不在允许的路径内:   (/无功/网络/虚拟主机/(为myhost)/的httpdocs /悼念/图像/ precrop /:/ TMP)...'

3 个答案:

答案 0 :(得分:0)

以前没碰过这个。如果您尝试移动的文件是使用PHP上传的,则只能使用move_uploaded_file。 尝试从配置中的precrop目录中删除尾部的“/”。

这里有一些额外的open_basedir信息: http://www.bigsoft.co.uk/blog/index.php/2007/12/30/fixing-php-s-require-open_basedir-restri

答案 1 :(得分:0)

存在PHP错误("Regression (5.3.3-5.3.4) in open_basedir with a trailing forward slash"),当open_basedir具有尾随斜杠时会触发该错误。解决方法从open_basedir中的路径中删除尾部斜杠。这个错误应该在最新版本的PHP中修复。

答案 2 :(得分:0)

请注意,如果路径上有符号链接,open_basedir也会失败。来自http://php.net/open_basedir

  

所有符号链接都已解析,因此无法通过符号链接来避免此限制。

请检查/var/www/vhosts/(yourhost)/httpdocs/tributes/images/precrop/是否是真实的目录路径,而不是符号链接的路径。