mkdir("com/aaa", 777);这个语句,aaa这个目录建成了,但是在虚拟主机上创建出来的目录权限是 411。
如果是在本机测试的话都可以建成功的,传到服务器上用FTP登陆查看aaa的属性是411,向aaa目录写文件就写不进去,我用chmod("com/aaa", 777);都改变不了目录权限,怎样才能使建立的新目录的属性为777呢?
急盼解决。
如果是在本机测试的话都可以建成功的,传到服务器上用FTP登陆查看aaa的属性是411,向aaa目录写文件就写不进去,我用chmod("com/aaa", 777);都改变不了目录权限,怎样才能使建立的新目录的属性为777呢?
急盼解决。
给出一种解决办法吧:用ftp的方式去建立文件夹,这样应该不会出现这种情况(ftp会要求提供用户名和密码)。
具体php用ftp方式建立文件夹的方法可以去网上找找。
chmod这种函数,普通共享服务器里面肯定要被限制的。
但是我用php代码,以ftp方式登录进去,新建目录不了,登录没有问题。
就是建不了目录
有什么办法?
chmod 777
因为每个用户的建的目录不一样,我觉得应该有办法解决,因为听客户说他都安装过php的一些开源文件,建文件夹和写文件都无问题。
但我不晓得怎么解决!
不知道提到的apache用户权限是什么意思?mkdir( "com/aaa", 0777 );chmod( "com/aaa", 0777 );这个应该是可写的,看一下com的目录权限是不是 777
但我用mkdir( "com/aaa", 0777 );
chmod( "com/aaa", 0777 );
然后上ftp查看,还是411.
用php代码,以ftp方式新建目录不了。
print umask();
否则就是umask的问题,设一下umask就行了。
那个是我说错了,不是LZ的问题...LZ是先在本地生成后,再上传的查看权限的,上传后的文件权限是411的! 所以LZ上传后查看文件 aaa的权限是不对的LZ应该用程序在服务器上生成一个 aaa ,然后 看一下权限,应该是对的!
当然更改后又可以,可问题是aaa是动态生成的,不可能生成后都要去修改!
生成 aaa的权限是 777
$old = umask(0);
mdkir("com/aaa",0777);
?>
正好我借的服务器umask也是18,试了一下,没加umask(0)的时候是0755,加了以后是0777.
哦,可以了
真的是很感谢runffer_yang ;
谢谢!