IT技术博客大学习 共学习 共进步

php_admin_value open_basedir 引起的上传文件失败解决方法

蒯义刚::网志 2009-10-28 13:32:24 浏览 4,203 次

    为了安全,我们通常会在虚拟主机设置中,加入这一行

    php_admin_value open_basedir "/usr/local/apache/htdocs/www"

    但这会导致move_uploaded_file不能读取临时目录中的上传文件,导致上传文件失失败。

    一般会提示以下错误:

以下是代码片段:
Warning: move_uploaded_file() [function.move-uploaded-file]: open_basedir restriction in effect. File(/tmp/phpqwg5rO) is not within the allowed path(s): (/usr/local/apache/htdocs/www) in /usr/local/apache/htdocs/www/includes/lib_common.php on line 3130

    解决方法:

    将上传文件的临时目录加入到php_admin_value open_basedir后面,最后看起来是这样的:

以下是代码片段:
<VirtualHost *:80>
    php_admin_value open_basedir "/usr/local/apache/htdocs/www:/tmp"
</VirtualHost>

    注意:两个目录之间是冒号隔开。

建议继续学习

  1. QQ上传大文件为什么这么快 (阅读 13,083)
  2. 10个强大的Ajax jQuery文件上传程序 (阅读 8,722)
  3. 解决securecrt rz 上传rar,gif文件不正确问题 (阅读 7,782)
  4. PHP上传进度条深度解析 (阅读 5,923)
  5. Codeigniter里的无刷新上传 (阅读 5,423)
  6. PHP上传文件类型彻底判断方案及PHP+nginx上传大小彻底控制方案 (阅读 4,942)
  7. PHP JAVA C上传文件如何准确判断文件类型-mime知识普及 (阅读 4,504)
  8. 渐进增强的无刷新多图片上传控件(iFrame+HTML5) (阅读 4,502)
  9. PHP文件上传源码分析(RFC1867) (阅读 3,902)
  10. 全平台大文件断点续传上传技术 ( 开源项目 Stream ) (阅读 3,523)