Home >Backend Development >PHP Tutorial >服务器禁用了chmod(),怎么解决

服务器禁用了chmod(),怎么解决

WBOY
WBOYOriginal
2016-06-23 13:35:111491browse

服务器禁用了chmod()函数
上传文件连读的权限都没有
假设不改服务器配置,在程序里,有没有解决的办法


回复讨论(解决方案)

联系服务器管理员,给你的网站程序目录单独设置 相关权限

楼上肯定看得太快了
我想问的是,程序里有没有解决办法

上传文件默认是apache的权限,一般为www-data是拥有者。
查看phpinfo(); 看看disable_functions是否有chmod,如果是就是被屏蔽了。
如果chmod不在disable_functions,则表示没有屏蔽,应该是可以使用的。

www-data上传文件,自己就是拥有者,不可能没有权限的。
起码php是有权限读写的。

www-data上传文件,自己就是拥有者,不可能没有权限的。
起码php是有权限读写的。



1、chmod()是被禁用了的
2、文件上传后,权限如下图:(如果说有权限,难道是我php代码写得有问题吗?)

拥有者不是可以rw吗?
看看拥有者是什么?

权限最起码设置为多少,浏览器访问时才能正常浏览?

window下测试时上传的图片,放到linux后是 -rw-r--r-- 权限
这种可以正常访问

用 ftp 软件查看并修改 images 目录的权限

用 ftp 软件查看并修改 images 目录的权限


images之前是755,现在改成777也还是不行
上传的图片文件的权限都是-rw-------

改成 666

改成 666


改成666也不行的。现在的问题应该是在文件的权限上

9月2号之前是win环境上传的,没有问题
5号之后上传到linux空间,就没读取权限
另外,linux下php文件上传,默认是 -rw------- 吗?

拥有者是什么?

拥有者是什么?


是不是得进入linux系统才能看到拥有者?
正常情况下,上传文件的拥有者是谁呢

/** 获取文件或文件夹的拥有者,组用户,及权限 * @param  String $filename * @return Array */  function file_attribute($filename){        if(!file_exists($filename)){          return false;      }        $owner = posix_getpwuid(fileowner($filename));      $group = posix_getpwuid(filegroup($filename));      $perms = substr(sprintf('%o',fileperms($filename)),-4);        $ret = array(          'owner' => $owner['name'],          'group' => $group['name'],          'perms' => $perms      );        return $ret;    } 

/** 获取文件或文件夹的拥有者,组用户,及权限 * @param  String $filename * @return Array */  function file_attribute($filename){        if(!file_exists($filename)){          return false;      }        $owner = posix_getpwuid(fileowner($filename));      $group = posix_getpwuid(filegroup($filename));      $perms = substr(sprintf('%o',fileperms($filename)),-4);        $ret = array(          'owner' => $owner['name'],          'group' => $group['name'],          'perms' => $perms      );        return $ret;    } 


不愧是万网
Warning: posix_getpwuid() has been disabled for security reasons in ............
Array ( [owner] => [group] => [perms] => -600 )

屏蔽得真多。

??是600?限。都已?可以??文件了。真是怪。

还是没弄好,还是出现Warning: chmod() has been disabled for security reasons in /data/home/qyu1297580001/htdocs/product/admin/func/upload.inc.php on line 66
OK这个求解

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn