Linux SSHPHP Utworzono plik | SSH nie można usunąć (brak uprawnień do zapisu)
utworzyć plik w PHP przy użyciu
if (!is_dir(DIR_FILE))
mkdir(DIR_FILE, 0777);
$filename = DIR_FILE . $id . '.txt';
$handle_cf = fopen($filename, 'a');
fwrite($handle_cf, $data . "\n");
fclose($handle_cf);
chmod($filename, 0777);
chown($filename, "usr111"); // usr111 = username
chgrp($filename, "usr111"); // usr111 = group that is also attached to apache
Plik pobiera następujące uprawnienia.
-rwxrwxrwx 1 apache apache 1447 Apr 4 12:48 D.txt
-rwxrwxrwx 1 apache apache 1447 Apr 4 12:48 E.txt
jednak gdy próbuję usunąć plik, pod zwykłe konto użytkownika (usr111). Wystąpił następujący błąd: UWAGA: Mogę usunąć plik w katalogu głównym.
FIX FOUND! mimo że używałem ustawienia trybu dla mkdir dla php. Z jakiegoś powodu to nie działało. Dodałem następujące.
if (!is_dir($dir)) {
mkdir($dir, 0777);
chmod($dir, 0777);
}
jakie są uprawnienia do katalogu Ten plik jest w? –
Jeśli logujesz się na zwykłym koncie użytkownika, PHP lub raczej Apache jest właścicielem pliku i nie będziesz mógł go usunąć, chyba że ma on uprawnienia dla wszystkich. W przeciwnym razie, jeśli jesteś zalogowany z rootem, nie powinieneś mieć żadnych problemów. – Francisc
+ MarcB drwxr-xr-x 2 apache apache 4096 4 kwietnia 12:48 sesja – RichardW11