Как удалить .htacceses

12
Klopopryg
На сайте с 29.12.2004
Offline
334
893

Подсадили на сайт .htacceses с редиректом. Напхали куда могли, во все папки. Руками устал ловить, может есть какой способ, чтобы это сделать автоматически удалить?

Лучше выстрелить, перезарядить и еще раз выстрелить, чем светить фонариком и спрашивать - "кто тут?"
Garin33
На сайте с 31.08.2009
Offline
169
#1

1. Писать скрипт, который пройдет рекурсивно и заменит все.

2. Скачать все на комп и сделать тоже самое через notepad++.

Я проверял сайты http://www.revisium.com/ai/, потом ручками чистил. Было несколько десятков htaccess, но ничего - за вечер все вылечил.

Потому что Drupal - это круто.
Klopopryg
На сайте с 29.12.2004
Offline
334
#2

а есть у кого готовый уже скрипт?

локально качать не вариант!

[Удален]
#3

Попопрыг, купи книжку по юниксу.

Jefa
На сайте с 01.02.2007
Offline
191
#4
Miha Kuzmin (KMY):
Попопрыг, купи книжку по юниксу.

тебе же сказали: локально не вариант.

:D

Klopopryg
На сайте с 29.12.2004
Offline
334
#5

какая книжка, если ты мой ник не можешь правильно прочитать ☝

нужен был бы совет, какую книжку купить, так бы и спросил!

По делу есть что сказать? (это тебе не курилка)

Jefa
На сайте с 01.02.2007
Offline
191
#6

Klopopryg, качай на комп весь сайт и или нотепадом++ а лучше тоталкоммандером ищи. И все будет хорошо. Топ обеспечен.

[Удален]
#7

Jefa, я не думаю, что пациент осилит нотепад+ или тотал.

ukrdev
На сайте с 15.11.2011
Offline
31
#9
Klopopryg:
а есть у кого готовый уже скрипт?
локально качать не вариант!



function search_htaccess($source, $delete = FALSE)
{
if (!file_exists($source)) {
return FALSE;
}
$htaccess_list = array();
$source = str_replace('\\', '/', realpath($source));
if (is_dir($source) === true)
{
$files = new RecursiveIteratorIterator(new RecursiveDirectoryIterator($source), RecursiveIteratorIterator::SELF_FIRST);
foreach ($files as $file)
{
$file = str_replace('\\', '/', $file);
// игнорим "." and ".."
if( in_array(substr($file, strrpos($file, '/')+1), array('.', '..')) ) {
continue;
}
if (is_file($file) === true)
{
$file_s = str_replace($source . '/', '', $file);
$file_f = explode("/", $file_s);
$file_f = array_reverse($file_f);
if($file_f[0] == '.htaccess') {
$htaccess_list[]['file'] = $file;
}
}
}
}
else if (is_file($source) === true)
{
$file_s = basename($source);
if($file_s == '.htaccess') {
$htaccess_list[]['file'] = $source;
}
}

if($delete === FALSE) {
return $htaccess_list;
}
$htaccess_list_f = $htaccess_list;
foreach($htaccess_list_f as $h_key=>$h_val)
{
$htaccess_list[$h_key]['del'] = unlink($h_val['file']);
}
return $htaccess_list;
}


$source = dirname(__FILE__);

// если заменить второй парметр функции с FALSE на TRUE, то попробует удалить если достаточно прав.
$result = search_htaccess($source, FALSE);
echo '<pre>';
var_dump($result);
echo '</pre>';

Klopopryg
На сайте с 29.12.2004
Offline
334
#10

из работающего нашел только скрипт, который удаляет по строчкам... но этих строчек там.....

12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий