在php中取消链接并拒绝权限
我正试图删除一个文件。我知道问题是什么,只是不知道如何正确设置权限 我目前的设置是Ubuntu 10.10 Netbeans,并通过FTP上传到我的开发服务器 这些是我为获得Apache2和VSTPD所做的步骤在php中取消链接并拒绝权限,php,apache,permissions,ftp,Php,Apache,Permissions,Ftp,我正试图删除一个文件。我知道问题是什么,只是不知道如何正确设置权限 我目前的设置是Ubuntu 10.10 Netbeans,并通过FTP上传到我的开发服务器 这些是我为获得Apache2和VSTPD所做的步骤 为umask 0027设置vsftpd(/etc/vsftpd.conf)[local_umask=0027] 创建www用户组(组添加www用户) 将linux\u服务器\u用户添加到组(usermod-a-G组linux\u服务器\u用户) 将apache设置为作为www用户组(ht
linux\u服务器\u用户
添加到组(usermod-a-G组linux\u服务器\u用户
)我猜我需要给apache权限来写我从FTP上传的文件。如何完成此操作?您可能需要检查您的ftp用户,看看他是否有删除文件的权限,有些用户只获得只读权限。如果您试图通过PHP
取消链接()
,则可能必须先将文件CHMOD到777,然后才能执行此操作。让我们看看您的访问模式:
2775
^^^
||'- read/exec by everyone in different groups
|'-- read/write/exec by group only
'--- read/write/exec by user only
最后一个标志应至少为6(由其他组读取/写入)
也就是说,在某些情况下,这是绝对不可能的(chmod、unlink等都失败)
这就是为什么主要的新系统(如wordpress和joomla)提供通过FTP进行文件修改(以编程方式)的确切原因
这是通过提供DSN以取消链接来实现的:
unlink('ftp://user:pass@host/absolute/path/to/file');
在某些情况下,可以禁用allow\u url\u fopen
,在这种情况下,您必须stream\u wrapper\u register()
您自己的FTP类
我发现PHP的FTP函数有很多问题,当我使用CURL函数时,它似乎工作得最好