LiteNet.Ru - Актуально о ПК и ПО. 2006-2019.
СТАТЬИ | НОВОСТИ | ПРОГРАММЫ | ОБРАТНАЯ СВЯЗЬ | КАРТА САЙТА
Сейчас на сайте: 5 пользователей онлайн
Обновления
Материал Mozilla Firefox 66.0.5 [10.05.19]
Материал AIMP 4.51.2084 [10.05.19]
Материал RealTimes (RealPlayer) 18.1.16.216 [10.05.19]
Материал Uninstall Tool 3.5.7 [10.05.19]
Материал Hamachi 2.2.0.633 [10.05.19]
Материал Paint.NET 4.1.6 [10.05.19]
Материал PotPlayer 1.7.18346  [10.05.19]
Материал USB Manager 2.05 [10.05.19]
Материал Rufus 3.5 [10.05.19]
Материал Gimp 2.10.10 [10.05.19]
Материал Lazesoft Recover My Password 3.5.3 [10.05.19]
Материал WinScan2PDF 4.77 [10.05.19]
Комментарии dynabook Satellite... [29.03.19]
Комментарии СПАСИБО!!! Получил... [04.03.19]
Комментарии Уважаемый Професси... [11.01.19]
Комментарии спасибо... [14.12.18]
Комментарии Спасибо, не заняло... [05.12.18]
Комментарии Toshiba satelit a2... [25.11.18]
Комментарии Вы шутите?... [23.11.18]
Комментарии Отличный продукт. ... [18.11.18]
Комментарии На второй вкладке ... [10.09.18]
Комментарии Помогло трёхсекунд... [04.07.18]
Комментарии Toshiba 440CDT Пр... [04.07.18]
Комментарии Не совсем согласен... [19.06.18]

RSS

Последние добавленные статьи

Удаление 'неудаляемых' файлов с веб-сервера
26.03.2007

Владельцу собственного веб-сайта всегда приятно ощущать себя полноправным хозяином пусть небольшого, но самого настоящего кусочка Всемирной сети. Появляются приятные хлопоты по содержанию своего виртуального дома в чистоте и порядке, дабы ежедневно забегающие посетители не тыкали потом пальцем в различные "косяки" и не отзывались о ресурсе, как о мусорной свалке, в которой тяжело найти что-то интересное.

Впрочем, среди загруженных на сервер данных со временем появляются "фантомы" в виде файлов или каталогов с непонятными названиями. Более того, при попытке их удалить ничего не происходит, зато появляется сообщение о том, что у вас недостаточно прав для выполнения такой операции. Ситуация, на первый взгляд, странная: ваш же ресурс, в рамках которого вы - "царь и бог", и вдруг на нем оказывается нечто неподвластное.

На самом деле это вполне обыденная ситуация. Как правило, веб-ресурсы мы создаём не на своих серверах, а арендуем место у провайдера. При этом его программное обеспечение наделено куда большими правами, чтобы контролировать действия тысяч "царьков", разместивших свои виртуальные "королевства" на сервере. Но дело это хлопотное, поэтому часто рутинную работу выполняют различного рода служебные скрипты, и они, естественно, также спокойно прохаживаются по вашим каталогам, так как хозяин-хостер наделил их более высокими привилегиями, чем вас. Вот именно их деятельностью и объясняется появление неподвластных вам фантомов (нередко неудаляемые объекты возникают и после инсталляции систем управления контентом CMS. - прим. ред.).

Но выход есть. Раз цифровой "мусор" в вашем хозяйстве оставлен бестелесными скриптами, и права доступа к нему вам не обеспечены, можно попробовать "внедрить" в коллектив этих невидимых тружеников своего "уборщика". Идея проста: если серверное ПО запускает выполнение скриптов, то почему бы ему не запустить и наш, тем самым, выполнив его от своего имени и с соответствующими правами доступа? Чаще всего на серверах используется скриптовый язык PHP, поэтому рассмотрим соответствующий пример

Для начала создадим в любом текстовом редакторе тот самый PHP-скрипт следующего содержания:

<?
$deldir = "Путь_к_директории_на_сервере";
rmdirr($deldir);

function rmdirr($dirname)
{
if (!file_exists($dirname)) {
return false;
}
if (is_file($dirname)) {
return unlink($dirname);
}
$dir = dir($dirname);
while (false !== $entry = $dir->read()) {
if ($entry == '.' || $entry == '..') {
continue;
}
rmdirr("$dirname/$entry");
}
$dir->close();
return rmdir($dirname);
}
?> 

В переменной $deldir указываем путь к файлу или каталогу, предназначенному к удалению и сохраняем скрипт под именем, к примеру, deleter.php. Загружаем наш файл на свой сервер.

Следует заметить, что если, к примеру, вы поместили скрипт в каталог ftp://ftp.mysite.net, а подлежащий к удалению каталог расположен по адресу ftp://ftp.mysite.net/movies/files/1234, то в скрипте путь к нему должен выглядеть так:

$deldir = "movies/files/1234";

Далее открываем браузер и вводим адрес www.mysite.net/deleter.php. Окно браузера останется пустым, но при этом указанные нами в скрипте данные будут удалены. Если "мусора" много, то, меняя путь в скрипте, аналогично удаляем все "неподвластные" файлы и каталоги.

Что еще почитать?