

How to delete Apache owned files and folders from your website
Posted by: Andrei in ProgrammingLet’s assume that you have a script that creates folders and files with specific php functions.
On Linux-based servers, these files and folders belongs to “apache
” user, and not to you. Of course, you can create them with 777
permissions, but default is 755
, which means no write permissions to other users and groups than “apache”.
Can you delete these files and folders through FTP ? No way.
The only way to delete them is like you create (through php functions, under the “apache” user):
– unlink (file)
deletes a file
– rmdir (folder)
deleted a folder
You can use them independently or, if you want to recursive delete a folder, its subfolders and files you can use this function (i found it php manual unlink page):
if(!$dh = @opendir($dir)) return;
while (($obj = readdir($dh))) {
if($obj==‘.’ || $obj==‘..’) continue;
if (!@unlink($dir.‘/’.$obj)) {
SureRemoveDir($dir.‘/’.$obj);
} else {
$file_deleted++;
}
}
if (@rmdir($dir)) $dir_deleted++;
}
and you can simply call it as:
Another techniques can also solve this situation, such as:
– if you have SSH access, you can user sudo chown
command to take control and then delete then normally
– you can ask for help to an administrator (he will also use the sudo chown)
– use suExec, if it is installed on the machine
Andrei
http://www.webxpert.ro