我在我的服务器上拥有755权限的Video文件夹。问题是:当有人去上传视频文件时,由于权限错误,无法上传到该文件夹。暂时使用PHP将文件夹权限更改为777
如果我将权限更改为777,则可以上传视频。但出于安全原因,我不想允许777的文件夹权限。
有没有什么办法在PHP上传视频时临时更改权限到777?
我在我的服务器上拥有755权限的Video文件夹。问题是:当有人去上传视频文件时,由于权限错误,无法上传到该文件夹。暂时使用PHP将文件夹权限更改为777
如果我将权限更改为777,则可以上传视频。但出于安全原因,我不想允许777的文件夹权限。
有没有什么办法在PHP上传视频时临时更改权限到777?
PHP为该任务提供了一个函数chmod()
。
尝试将指定文件的模式更改为模式中给出的模式。
您可以将它放在if
语句中,如果它返回false,则可以跳过上载文件部分。
的使用会像
if(chmod($path, 0777)) {
// more code
chmod($path, 0755);
}
else
echo "Couldn't do it.";
如chmod function manual描述的,$mode
必须在八进制格式 - 前导零,即chmod($path, 0777)
+1的详细答案,谢谢 – 2013-03-05 08:32:25
if-clause已经将权限更改为“0777”吗? – AAGD 2015-11-05 14:23:22
@AAGD是的。但问题是:“PHP上传video_时是否有任何方式临时将权限更改为777?”? – hjpotter92 2015-11-05 15:16:32
有一种方法(PHP提供chmod
函数),但由于PHP不是文件夹的所有者,您将无法更改权限。我认为你正在解决错误的问题。在同一组中添加网络服务器和PHP,并将775添加到该文件夹。
775也不能正常工作 – 2013-03-05 08:31:13
因为PHP显然不在该文件夹的所有者组:) – 2013-03-05 08:32:10
ohh好的,谢谢 – 2013-03-05 08:33:17
您可以使用chmod()
函数。
欲了解更多信息,请here
您必须初始化配置为上载,像这样:
$config['remove_spaces'] = FALSE;
$config['upload_path'] = $path;
$this->upload->initialize($config);
$this->load->library('upload', $config);
这与codeigniter不是他在做什么。 – 2015-06-26 19:34:56
请给外观上http://stackoverflow.com/questions/2958602/still -dont-understand-file-upload-folder-permissions – Agilox 2013-03-05 08:44:17