PHP文件上传文件到open stream

PHP文件上传文件到open stream,php,linux,Php,Linux,更新: Warning: copy(/home/blah/Music/Aerial_view_of_Yamuna_Expressway.jpeg): failed to open stream: Permission denied in /opt/lampp/htdocs/UI/user/joinmeeting.php on line 292 为什么我的linux系统不允许复制文件?检查目标文件夹的权限。 设置777并重试 $chmod 777文件夹 因此,正如我们现在看到的,您没有设置音乐文

更新:

Warning: copy(/home/blah/Music/Aerial_view_of_Yamuna_Expressway.jpeg): failed to open stream: Permission denied in /opt/lampp/htdocs/UI/user/joinmeeting.php on line 292

为什么我的linux系统不允许复制文件?

检查目标文件夹的权限。
设置777并重试

$chmod 777文件夹

因此,正如我们现在看到的,您没有设置音乐文件夹的写入权限。

从控制台手动设置,而不是从php脚本设置。

尝试使用move\u上传的\u文件(http://php.net/manual/en/function.move-uploaded-file.php)而不是复制:

blah@my001server:~$  ls -la for /home/blah/Music
ls: cannot access for: No such file or directory
/home/blah/Music:
total 8
drwxr-xr-x  2 blah blah 4096 Jul  4 10:20 .
drwxr-xr-x 67 blah blah 4096 Sep 21 10:18 ..

好吧,你的编辑有点奇怪

move_uploaded_file($_FILES[images][tmp_name][$key], $dir);
该命令是错误的,因为它实际上是:

blah@my001server:~$  ls -la for /home/blah/Music
ls: cannot access for: No such file or directory
/home/blah/Music:
total 8
drwxr-xr-x  2 blah blah 4096 Jul  4 10:20 .
drwxr-xr-x 67 blah blah 4096 Sep 21 10:18 ..
你应该跑步

但好吧,我看到一个问题。表示整个文件夹的文件
没有
www-data
权限。这意味着Linux发行版的默认webuser可能没有访问这些文件的权限

由于PHP在webuser
www data
Linux下运行,因此它将不允许
cp
vi
gedit
(或其他相关内容)它不拥有的任何东西

您可以尝试:

blah@my001server:~$  ls -la /home/blah/Music
相反。这应该给予
www-data
一些权限来控制目录中的文件


当然,这会带来更大的问题。理想情况下,出于安全需要,您希望断开任何上载目录或任何内容与实际web服务器的连接。

因为您没有权限。请尝试如何建议他人使用chmod 777?这就像欢迎强盗进入你的家。@Mihai Iorga首先你需要找到一个问题,然后解决它it@user1667633您是尝试从控制台手动设置chmod,还是仅从脚本设置chmod?移动\u上传的\u文件():无法将“/tmp/phpS9gEer”移动到“/home/blah/Music/air_view_of u Yamuna_expression.jpeg”Ok,因此您应该检查您是否对/tmp/(chmod it if no)拥有足够的权限,或者检查/home/blah/Music/是否确实存在(mkdir it if no),或者即使您的磁盘上有足够的空间(清理它!):)@MrSil还包括一个警告:移动上传的文件(/home/blah/Music/air\u view\u of_Yamuna\u expression.jpeg):无法打开流:第293行的/opt/lampp/htdocs/UI/user/joinmeeting.php中的权限被拒绝我知道这是因为我没有写权限,但我不知道如何处理它out@Fry_95我有500 GB的磁盘空间,顺便说一句,这是一种权限问题这里有一个错误:问题是“路径不完整”
blah@my001server:~$  ls -la /home/blah/Music
sudo chown /home/blah/Music www-data