Ищу скрипт который уберет весь мусор с сайта

p486

Постоялец
Регистрация
11 Сен 2010
Сообщения
95
Реакции
0
здравствуйте!
ищу php скрипт который найдет все файлы (*.html, *.php, *.css, *.js) во всех каталогах на сайте и уберет из них все лишние пробелы, табы и комментарии
 
здравствуйте!
ищу php скрипт который найдет все файлы (*.html, *.php, *.css, *.js) во всех каталогах на сайте и уберет из них все лишние пробелы, табы и комментарии
Total Commander, Notepad++ :facepalm:
 
хочу запустить на сайте и больше ничего не делать. скрипт то сам по себе не сложный. наверняка уже кто-то такой написал
Обычным скриптом тут не обойтись. Смотри в сторону специализированных minifier. Для просмотра ссылки Войди или Зарегистрируйся умеет ужимать js\css и много других вкусностей.
 
Тоже конечно не то, но хотя бы с табами и комментариями возможно может помочь:

... универсальный скрипт, который изначально писался для борьбы с base64, однако подходит не только для этого, но и для:

1. Поиска, удаления и замены любого текста во всех файлах на сервере.
2. Удаления вредоносного кода из всех файлов на сервере.

Суть работы скрипта: парсит все файлы на сервере на наличие определённого кода, и при условии совпадения - заменяет его пустой строкой. Тестировалось более чем на 15ти сайтах - работа идеальна.
Код скрипта сохраняем в файлик delvir.php и льём в корень сайта. Затем в браузере набираем [site.ru]/delvir.php
После выполнения будет подробненький отчёт, а в самом низу - результаты.

Вот и сам код с подробными комментами:

код скрипта

PHP код:
<?php

//gendalf_grey for webmasters.ru

$virus_text = 'в эти кавычки пишем вредоносный код';
$skip_files = array ('delvir.php');
$del = true;
$dir = getcwd().'/';
$num_infected = 0;
function dir_walk($callback, $dir, $types = null, $recursive = false, $baseDir = '') {
if ($dh = opendir($dir)) {
while (($file = readdir($dh))!== false) {
if ($file === '.' || $file === '..') {
continue;
}
if (is_file($dir . $file)) {
if (is_array($types)) {
if (!in_array(strtolower(pathinfo($dir . $file, PATHINFO_EXTENSION)), $types, true)) {
continue;
}
}
$callback($baseDir, $file);
}elseif($recursive && is_dir($dir . $file)) {
dir_walk($callback, $dir . $file . DIRECTORY_SEPARATOR, $types, $recursive, $baseDir . $file . DIRECTORY_SEPARATOR);
}
}
closedir($dh);
}
}
function del_virus ($fdir, $ffile)
{
$flag = false;
$filename = $fdir.$ffile;
echo $filename;
if (!in_array($ffile, $GLOBALS['skip_files'])){
$handle = fopen($filename, "r");
$fsize = filesize($filename);
if (!$fsize){
$contents = '';
}else{
$contents = fread($handle, $fsize);
}
fclose($handle);
if (strpos($contents, $GLOBALS['virus_text']) !== false) {
if ( $GLOBALS['del'] ) {
$contents = str_replace($GLOBALS['virus_text'], '', $contents);
$handle = fopen($filename, "wb");
fwrite($handle,$contents);
fclose($handle);
echo " - deleted";
}
echo " - infected";
$GLOBALS['num_infected']++;
}
}else{
echo " - skipped";
}
echo "<br/>";
};
dir_walk('del_virus', $dir, array('php','php5','html','htm','shtml'), true, $dir );
echo "Num infected = $num_infected <br/>";
?>
 
Назад
Сверху