phpMyAdmin文件不能被读取

每当我尝试上传文件导入到phpMyAdmin我得到以下错误:

文件无法读取

phpMyAdmin是我在我的服务器上运行的唯一的PHP脚本,因此我的PHPconfiguration文件是相当香草,除了以下更改:

upload_tmp_dir = /tmp upload_max_filesize = 10M post_max_size = 50M memory_limit = 64M 

我想导入的文件是4MB,正好在10MB的上传大小和50MB的文件大小(也是UTF-8)。 设置upload_tmp_dir实际上解决了我以前遇到的问题(phpMyAdmin在抱怨我甚至没有指定文件),或者至less将错误更改为我现在正在获取的内容。 / tmp的权限是777。

问题是什么? 该文件来自hostmonster上的cpanel安装我正在迁移到我自己的vps。 我已经尝试从cpanel备份实用程序获取sql文件,并从他们的安装phpMyAdmin(无压缩和gzipped)。 我不相信这些文件是损坏的。

额外信息:我正在运行CentOS 5.6,phpMyAdmin 3.4.2,mysql 5.1.52和php 5.2.16。

如果您的php.ini中设置了open_basedir ,PHP将无法访问该目录之上的文件。

我认为问题是php.ini设置:

 upload_tmp_dir = /tmp open_basedir = /data/home/:/tmp/ 

open_basedir需要添加/tmp/

我想你可以在configuration文件php.ini中设置:

 upload_tmp_dir = /tmp open_basedir = /var/www:/data/home:/tmp 

但是,不要添加目标目录的最后一个斜杠。 在php文档中创build:

 When you want to restrict access to only the specified directory, end with a slash. For example: open_basedir = /dir/incl/ 

http://php.net/manual/en/ini.core.php